home *** CD-ROM | disk | FTP | other *** search
/ Aminet 37 / Aminet 37 (2000)(Schatztruhe)[!][Jun 2000].iso / Aminet / dev / lang / sofa.lha / sofa / smalleiffel / bin_c / compile_to_c11.c < prev    next >
C/C++ Source or Header  |  2000-03-25  |  102KB  |  4,241 lines

  1. /*
  2. -- ANSI C code generated by :
  3. -- SmallEiffel The GNU Eiffel Compiler -- Release (- 0.76Beta#1)--
  4. -- Copyright (C), 1994-98 - LORIA - UHP - CRIN - INRIA - FRANCE --
  5. -- Dominique COLNET and Suzanne COLLIN -    colnet@loria.fr     --
  6. --                  http://SmallEiffel.loria.fr/                --
  7. */
  8. #include "compile_to_c.h"
  9.  
  10.  
  11. void r178make(T178* C,T0* a1){
  12. T0* _an2=NULL;
  13. T2 _rank=0;
  14. T2 _i=0;
  15. T0* _tla2=NULL;
  16. T0* _tla=NULL;
  17. T0* _tlf=NULL;
  18. T0* _an=NULL;
  19. r178declaration_list_make(C,a1);
  20. _i=/*(IRF4.6count*/(/*RF2*/(((T182*)((/*RF2*/(C)->_flat_list/*8*/))))->_upper/*12*/)/*)*/;
  21. while (!((_i)==(0)))
  22. {
  23. _an=/*(IRF4.6name*/r182item(((T182*)((/*RF2*/(C)->_flat_list/*8*/))),_i)/*)*/;
  24. _tlf=(/*RF2*/(((T181*)_an))->_result_type/*16*/);
  25. if(NULL!=(_tlf)){
  26. switch(((T0*)_tlf)->id){
  27. case 254:
  28. break;
  29. default:
  30. _tlf=NULL;
  31. }
  32. }/*[IF*/
  33. if((_tlf)!=((void*)(NULL))){
  34. _rank=r178rank_of(C,X82to_string((/*RF2*/(((T254*)_tlf))->_like_what/*12*/)));
  35. /*[IF*/
  36. if((_rank)==(_i)){
  37. r66add_position((/*RF2*/(((T254*)_tlf))->_start_position/*4*/));
  38. r178fatal_error(((T0*)ms14_47034));
  39. }
  40.  else if((_rank)>(0)){
  41. {T68 se_tmp0;
  42. {T179*n=((T179*)malloc(sizeof(*n))/*20*/);
  43. *n=M179;
  44. r179refer_to(n,(*(se_tmp0=X82start_position((/*RF2*/(((T254*)_tlf))->_like_what/*12*/)),&se_tmp0)),(T0*)C,_rank);
  45. _an2=((T0*)n);
  46. }
  47. }
  48. {T257*n=((T257*)malloc(sizeof(*n))/*24*/);
  49. *n=M257;
  50. r257make(n,(/*RF2*/(((T254*)_tlf))->_start_position/*4*/),_an2);
  51. _tla=((T0*)n);
  52. }
  53. /*[IRF3.3set_result_type*/((((T181*)(((T181*)_an))))->_result_type)=(_tla);
  54. /*]*/
  55. }
  56. /*FI]*/
  57. }
  58. /*FI]*/
  59. _i=(_i)-(1);
  60. }
  61. /*[IF*/
  62. if(r47all_check((T47*)(oBC13run_control))){
  63. _i=/*(IRF4.6count*/(/*RF2*/(((T182*)((/*RF2*/(C)->_flat_list/*8*/))))->_upper/*12*/)/*)*/;
  64. while (!((_i)==(0)))
  65. {
  66. _tla=(/*RF2*/((T181*)(/*(IRF4.6name*/r182item(((T182*)((/*RF2*/(C)->_flat_list/*8*/))),_i)/*)*/))->_result_type/*16*/);
  67. if(NULL!=(_tla)){
  68. switch(((T0*)_tla)->id){
  69. case 257:
  70. break;
  71. default:
  72. _tla=NULL;
  73. }
  74. }/*[IF*/
  75. if((_tla)!=((void*)(NULL))){
  76. _rank=r178rank_of(C,r179to_string((T179*)((/*RF2*/(((T257*)_tla))->_like_what/*12*/))));
  77. _tla2=(/*RF2*/((T181*)(/*(IRF4.6name*/r182item(((T182*)((/*RF2*/(C)->_flat_list/*8*/))),_rank)/*)*/))->_result_type/*16*/);
  78. if(NULL!=(_tla2)){
  79. switch(((T0*)_tla2)->id){
  80. case 257:
  81. break;
  82. default:
  83. _tla2=NULL;
  84. }
  85. }/*[IF*/
  86. if((_tla2)!=((void*)(NULL))){
  87. r66add_position((/*RF2*/(((T257*)_tla))->_start_position/*4*/));
  88. r66add_position((/*RF2*/(((T257*)_tla2))->_start_position/*4*/));
  89. r178fatal_error(((T0*)ms14_47034));
  90. }
  91. /*FI]*/
  92. }
  93. /*FI]*/
  94. _i=(_i)-(1);
  95. }
  96. }
  97. /*FI]*/
  98. }
  99.  
  100.  
  101. void r178fatal_error(T0* a1){
  102. /*[IRF3.6append*/{T0* b1=a1;
  103. r7append((T7*)(oBC66explanation),b1);
  104. }/*]*/
  105. r66print_as_fatal_error((T66*)(oBC13eh));
  106. }
  107.  
  108.  
  109. void r178afd_notify_conversion(T178* C,T0* a1){
  110. T0* _destination_type=NULL;
  111. T0* _source_type=NULL;
  112. T2 _i=0;
  113. _i=/*(IRF4.6count*/(/*RF2*/(((T182*)((/*RF2*/(C)->_flat_list/*8*/))))->_upper/*12*/)/*)*/;
  114. while (!((_i)==(0)))
  115. {
  116. _source_type=r178type(C,_i);
  117. _destination_type=r178type(((T178*)a1),_i);
  118. r341passing((T341*)(oBC13conversion_handler),_source_type,_destination_type);
  119. _i=(_i)-(1);
  120. }
  121. }
  122.  
  123.  
  124. void r178compile_to_c_in(T178* C,T0* a1){
  125. T0* _t=NULL;
  126. T2 _i=0;
  127. _i=1;
  128. while (!((_i)>(/*(IRF4.6count*/(/*RF2*/(((T182*)((/*RF2*/(C)->_flat_list/*8*/))))->_upper/*12*/)/*)*/)))
  129. {
  130. _t=X52run_type(r178type(C,_i));
  131. X52c_type_for_argument_in(_t,a1);
  132. r7extend(((T7*)a1),((T3)'\40'));
  133. r7extend(((T7*)a1),((T3)'a'));
  134. r2append_in(_i,a1);
  135. /*[IF*/
  136. if(r47no_check((T47*)(oBC13run_control))){
  137. r203increment((T203*)(oBC13c_frame_descriptor_local_count));
  138. r7append((T7*)(oBC13c_frame_descriptor_format),(/*RF2*/((T181*)(/*(IRF4.6name*/r182item(((T182*)((/*RF2*/(C)->_flat_list/*8*/))),_i)/*)*/))->_to_string/*12*/));
  139. X52c_frame_descriptor(_t);
  140. r7append((T7*)(oBC13c_frame_descriptor_locals),((T0*)ms178_14440));
  141. r2append_in(_i,oBC13c_frame_descriptor_locals);
  142. r7extend((T7*)(oBC13c_frame_descriptor_locals),((T3)'\54'));
  143. }
  144. /*FI]*/
  145. _i=(_i)+(1);
  146. /*[IF*/
  147. if((_i)<=(/*(IRF4.6count*/(/*RF2*/(((T182*)((/*RF2*/(C)->_flat_list/*8*/))))->_upper/*12*/)/*)*/)){
  148. r7extend(((T7*)a1),((T3)'\54'));
  149. }
  150. /*FI]*/
  151. }
  152. }
  153.  
  154.  
  155. T6 r178is_runnable(T178* C,T0* a1){
  156. T6 R=0;
  157. T0* _t=NULL;
  158. T0* _n=NULL;
  159. T2 _i=0;
  160. R=1;
  161. _i=(/*RF2*/((T182*)((/*RF2*/(C)->_flat_list/*8*/)))->_upper/*12*/);
  162. while (!((!(R))||((_i)==(0))))
  163. {
  164. _t=r178type(C,_i);
  165. /*[IF*/
  166. if(X52is_run_type(_t)){
  167. /*[IF*/
  168. if((X52run_type(_t))!=((void*)(_t))){
  169. R=0;
  170. }
  171. /*FI]*/
  172. }
  173. else{
  174. R=0;
  175. }
  176. /*FI]*/
  177. _i=(_i)-(1);
  178. }
  179. /*[IF*/
  180. if(R){
  181. _i=(/*RF2*/((T182*)((/*RF2*/(C)->_flat_list/*8*/)))->_upper/*12*/);
  182. while (!((_i)==(0)))
  183. {
  184. _n=r182item((T182*)((/*RF2*/(C)->_flat_list/*8*/)),_i);
  185. /*[IF*/
  186. if((r181to_runnable(((T181*)_n),a1))==((void*)(NULL))){
  187. r178error((/*RF2*/(((T181*)_n))->_start_position/*4*/),((T0*)ms170_18096));
  188. _i=0;
  189. }
  190. else{
  191. _i=(_i)-(1);
  192. }
  193. /*FI]*/
  194. }
  195. r178check_name_clash(C,a1);
  196. }
  197. /*FI]*/
  198. return R;
  199. }
  200.  
  201.  
  202. T68 r178start_position(T178* C){
  203. T68 R={NULL,0};
  204. R=(/*RF2*/((T181*)(/*(IRF4.6first*/((/*RF2*/((T182*)((/*RF2*/(C)->_flat_list/*8*/)))->_storage/*4*/))[0]/*)*/))->_start_position/*4*/);
  205. return R;
  206. }
  207.  
  208.  
  209. T0* r303try_to_undefine_aux(T303* C,T0* a1,T0* a2){
  210. T0* R=NULL;
  211. {T285*n=((T285*)malloc(sizeof(*n))/*40*/);
  212. *n=M285;
  213. r285from_effective(n,a1,(/*RF2*/(C)->_arguments/*20*/),(/*RF2*/(C)->_require_assertion/*28*/),(/*RF2*/(C)->_ensure_assertion/*32*/),a2);
  214. R=((T0*)n);
  215. }
  216. return R;
  217. }
  218.  
  219.  
  220. T0* r303try_to_undefine(T303* C,T0* a1,T0* a2){
  221. T0* R=NULL;
  222. T0* _fn2=NULL;
  223. {T68 se_tmp0;
  224. r66add_position((*(se_tmp0=X82start_position(a1),&se_tmp0)));
  225. }
  226. _fn2=r83feature_name((T83*)((/*RF2*/(C)->_names/*8*/)),X82to_key(a1));
  227. /*[IF*/
  228. if((_fn2)!=((void*)(NULL))){
  229. X82undefine_in(_fn2,a2);
  230. }
  231. /*FI]*/
  232. /*[IRF3.2cancel*//*[IRF3.3clear*/((((T7*)((T7*)(oBC66explanation))))->_count)=(0);
  233. /*]*/
  234. /*[IRF3.3clear*/((((T67*)((T67*)(oBC66positions))))->_upper)=(-(1));
  235. /*]*/
  236. /*]*/
  237. R=r303try_to_undefine_aux(C,a1,a2);
  238. /*[IF*/
  239. if((R)!=((void*)(NULL))){
  240. X284set_clients(R,(/*RF2*/(C)->_clients/*16*/));
  241. r303merge_header_comments(C,R);
  242. }
  243. else{
  244. r51fatal_undefine(((T51*)a2),a1);
  245. }
  246. /*FI]*/
  247. return R;
  248. }
  249.  
  250.  
  251. void r303check_obsolete(T303* C,T68 a1){
  252. /*[IF*/
  253. if(((/*RF2*/(C)->_obsolete_mark/*24*/))!=((void*)(NULL))){
  254. /*[IF*/
  255. if(!((/*RF2*/((T49*)(oBC13small_eiffel))->_short_flag/*5*/))){
  256. r66add_position(a1);
  257. /*[IRF3.6append*/{T0* b1=((T0*)ms90_19170);
  258. r7append((T7*)(oBC66explanation),b1);
  259. }/*]*/
  260. /*[IRF3.6append*/{T0* b1=(/*RF2*/((T161*)((/*RF2*/(C)->_obsolete_mark/*24*/)))->_to_string/*12*/);
  261. r7append((T7*)(oBC66explanation),b1);
  262. }/*]*/
  263. {T68 se_tmp0;
  264. r66add_position((*(se_tmp0=r303start_position(C),&se_tmp0)));
  265. }
  266. r66print_as_warning((T66*)(oBC13eh));
  267. }
  268. /*FI]*/
  269. }
  270. /*FI]*/
  271. }
  272.  
  273.  
  274. void r303error(T68 a1,T0* a2){
  275. r66add_position(a1);
  276. /*[IRF3.6append*/{T0* b1=a2;
  277. r7append((T7*)(oBC66explanation),b1);
  278. }/*]*/
  279. r66print_as_error((T66*)(oBC13eh));
  280. }
  281.  
  282.  
  283. T0* r303to_run_feature(T303* C,T0* a1,T0* a2){
  284. T0* R=NULL;
  285. {T368*n=((T368*)malloc(sizeof(*n))/*56*/);
  286. *n=M368;
  287. r368make(n,a1,a2,(T0*)C);
  288. R=((T0*)n);
  289. }
  290. return R;
  291. }
  292.  
  293.  
  294. T6 r303is_not_mergeable_with(T303* C,T0* a1){
  295. T6 R=0;
  296. /*[IF*/
  297. {/*AT*/R=(X90result_type(a1))!=((void*)(NULL));
  298. }
  299. /*FI]*/
  300. /*[IF*/
  301. if(R){
  302. /*[IRF3.6append*/{T0* b1=((T0*)ms90_64152);
  303. r7append((T7*)(oBC66explanation),b1);
  304. }/*]*/
  305. }
  306. else{
  307. /*[IF*/
  308. if(((/*RF2*/(C)->_arguments/*20*/))==((void*)(NULL))){
  309. R=(X90arguments(a1))!=((void*)(NULL));
  310. }
  311. else{
  312. R=(X90arguments(a1))==((void*)(NULL));
  313. }
  314. /*FI]*/
  315. /*[IF*/
  316. if(R){
  317. /*[IRF3.6append*/{T0* b1=((T0*)ms90_82612);
  318. r7append((T7*)(oBC66explanation),b1);
  319. }/*]*/
  320. }
  321.  else if(((/*RF2*/(C)->_arguments/*20*/))==((void*)(NULL))){
  322. }
  323.  else if((/*(IRF4.6count*/(/*RF2*/(((T182*)((/*RF2*/((T178*)((/*RF2*/(C)->_arguments/*20*/)))->_flat_list/*8*/))))->_upper/*12*/)/*)*/)!=(/*(IRF4.6count*/(/*RF2*/(((T182*)((/*RF2*/((T178*)(X90arguments(a1)))->_flat_list/*8*/))))->_upper/*12*/)/*)*/)){
  324. /*[IRF3.6append*/{T0* b1=((T0*)ms90_66660);
  325. r7append((T7*)(oBC66explanation),b1);
  326. }/*]*/
  327. R=1;
  328. }
  329. /*FI]*/
  330. }
  331. /*FI]*/
  332. r303merge_header_comments(C,a1);
  333. return R;
  334. }
  335.  
  336.  
  337. void r303set_header_comment(T303* C,T0* a1){
  338. /*[IF*/
  339. if(((a1)!=((void*)(NULL)))&&((/*(IRF4.6count*/r44count(((T44*)((/*RF2*/(((T81*)a1))->_list/*8*/))))/*)*/)>(1))){
  340. (/*SFN*/C->_end_comment)=a1;
  341. }
  342. /*FI]*/
  343. }
  344.  
  345.  
  346. void r303make_routine(T303* C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5){
  347. /*[IRF3.3make_e_feature*/((((T303*)(C)))->_names)=(a1);
  348. /*]*/
  349. (/*SFN*/C->_header_comment)=a4;
  350. (/*SFN*/C->_arguments)=a2;
  351. (/*SFN*/C->_obsolete_mark)=a3;
  352. (/*SFN*/C->_require_assertion)=a5;
  353. }
  354.  
  355.  
  356. void r303make(T303* C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5,T0* a6,T0* a7){
  357. r303make_routine(C,a1,a2,a3,a4,a5);
  358. (/*SFN*/C->_local_vars)=a6;
  359. (/*SFN*/C->_routine_body)=a7;
  360. (/*SFN*/C->_use_current_state)=9;
  361. }
  362.  
  363.  
  364. void r303add_into(T303* C,T0* a1){
  365. T0* _fn=NULL;
  366. T2 _i=0;
  367. {T68 se_tmp0;
  368. (/*SFN*/C->_base_class)=(/*RF2*/((*(se_tmp0=X82start_position(r83item((T83*)((/*RF2*/(C)->_names/*8*/)),1)),&se_tmp0)))._base_class/*0*/);
  369. }
  370. _i=1;
  371. while (!((_i)>(r83count((T83*)((/*RF2*/(C)->_names/*8*/))))))
  372. {
  373. _fn=r83item((T83*)((/*RF2*/(C)->_names/*8*/)),_i);
  374. /*[IF*/
  375. if(r91has(((T91*)a1),X82to_key(_fn))){
  376. _fn=/*SSFRF4*//*X90first_name*//*(IRF4.6first_name*/(/*RF2*/(((T83*)((/*RF2*/((T198*)(r91at(((T91*)a1),X82to_key(_fn))))->_names/*8*/))))->_first/*0*/)/*)*/;
  377. {T68 se_tmp0;
  378. r66add_position((*(se_tmp0=X82start_position(_fn),&se_tmp0)));
  379. }
  380. {T68 se_tmp0;
  381. r66add_position((*(se_tmp0=X82start_position(r83item((T83*)((/*RF2*/(C)->_names/*8*/)),_i)),&se_tmp0)));
  382. }
  383. /*[IRF3.6append*/{T0* b1=((T0*)ms90_41470);
  384. r7append((T7*)(oBC66explanation),b1);
  385. }/*]*/
  386. /*[IRF3.6append*/{T0* b1=X82to_string(_fn);
  387. r7append((T7*)(oBC66explanation),b1);
  388. }/*]*/
  389. /*[IRF3.6append*/{T0* b1=((T0*)ms14_46);
  390. r7append((T7*)(oBC66explanation),b1);
  391. }/*]*/
  392. r66print_as_error((T66*)(oBC13eh));
  393. }
  394. else{
  395. r91put(((T91*)a1),(T0*)C,X82to_key(_fn));
  396. }
  397. /*FI]*/
  398. _i=(_i)+(1);
  399. }
  400. }
  401.  
  402.  
  403. T6 r303can_hide(T303* C,T0* a1,T0* a2){
  404. T6 R=0;
  405. /*[IF*/
  406. if((/*(IRF4.1result_type*/NULL/*)*/)!=((void*)(X90result_type(a1)))){
  407. /*[IF*/
  408. {/*AT*/{T68 se_tmp0;
  409. r66add_position((*(se_tmp0=X90start_position(a1),&se_tmp0)));
  410. }
  411. {T68 se_tmp0;
  412. r303error((*(se_tmp0=r303start_position(C),&se_tmp0)),((T0*)ms90_64152));
  413. }
  414. }
  415. /*FI]*/
  416. }
  417. /*FI]*/
  418. /*[IF*/
  419. if(((/*RF2*/(C)->_arguments/*20*/))!=((void*)(X90arguments(a1)))){
  420. /*[IF*/
  421. if((((/*RF2*/(C)->_arguments/*20*/))==((void*)(NULL)))||((X90arguments(a1))==((void*)(NULL)))){
  422. {T68 se_tmp0;
  423. r66add_position((*(se_tmp0=X90start_position(a1),&se_tmp0)));
  424. }
  425. {T68 se_tmp0;
  426. r303error((*(se_tmp0=r303start_position(C),&se_tmp0)),((T0*)ms90_82612));
  427. }
  428. }
  429.  else if((/*(IRF4.6count*/(/*RF2*/(((T182*)((/*RF2*/((T178*)((/*RF2*/(C)->_arguments/*20*/)))->_flat_list/*8*/))))->_upper/*12*/)/*)*/)!=(/*(IRF4.6count*/(/*RF2*/(((T182*)((/*RF2*/((T178*)(X90arguments(a1)))->_flat_list/*8*/))))->_upper/*12*/)/*)*/)){
  430. {T68 se_tmp0;
  431. r66add_position((*(se_tmp0=X90start_position(a1),&se_tmp0)));
  432. }
  433. {T68 se_tmp0;
  434. r303error((*(se_tmp0=r303start_position(C),&se_tmp0)),((T0*)ms90_66660));
  435. }
  436. }
  437. /*FI]*/
  438. }
  439. /*FI]*/
  440. /*[IF*/
  441. if((/*(IRF4.9nb_errors*/(/*RF2*/((T66*)(oBC13eh))->_error_counter/*0*/)/*)*/)==(0)){
  442. /*[IF*/
  443. /*AF*//*AE*/
  444. /*FI]*/
  445. }
  446. /*FI]*/
  447. /*[IF*/
  448. if((/*(IRF4.9nb_errors*/(/*RF2*/((T66*)(oBC13eh))->_error_counter/*0*/)/*)*/)==(0)){
  449. /*[IF*/
  450. if(((/*RF2*/(C)->_arguments/*20*/))!=((void*)(NULL))){
  451. /*[IF*/
  452. if(!(r178is_a_in((T178*)((/*RF2*/(C)->_arguments/*20*/)),X90arguments(a1),a2))){
  453. {T68 se_tmp0;
  454. r66add_position((*(se_tmp0=X90start_position(a1),&se_tmp0)));
  455. }
  456. {T68 se_tmp0;
  457. r66add_position((*(se_tmp0=r303start_position(C),&se_tmp0)));
  458. }
  459. /*[IRF3.6append*/{T0* b1=((T0*)ms90_51136);
  460. r7append((T7*)(oBC66explanation),b1);
  461. }/*]*/
  462. /*[IRF3.6append*/{T0* b1=X52run_time_mark((/*RF2*/(((T50*)a2))->_current_type/*0*/));
  463. r7append((T7*)(oBC66explanation),b1);
  464. }/*]*/
  465. /*[IRF3.6append*/{T0* b1=((T0*)ms14_46);
  466. r7append((T7*)(oBC66explanation),b1);
  467. }/*]*/
  468. r66print_as_error((T66*)(oBC13eh));
  469. }
  470. /*FI]*/
  471. }
  472. /*FI]*/
  473. }
  474. /*FI]*/
  475. R=(/*(IRF4.9nb_errors*/(/*RF2*/((T66*)(oBC13eh))->_error_counter/*0*/)/*)*/)==(0);
  476. /*[IF*/
  477. if(R){
  478. r303merge_header_comments(C,a1);
  479. }
  480. /*FI]*/
  481. return R;
  482. }
  483.  
  484.  
  485. void r303merge_header_comments(T303* C,T0* a1){
  486. /*[IF*/
  487. if((/*RF2*/((T49*)(oBC13small_eiffel))->_short_flag/*5*/)){
  488. /*[IF*/
  489. if(((/*RF2*/(C)->_header_comment/*12*/))==((void*)(NULL))){
  490. (/*SFN*/C->_header_comment)=/*SSWARF2*//*X90header_comment*/(/*RF2*/(((T198*)a1))->_header_comment/*12*/);
  491. }
  492.  else if((/*SSWARF2*//*X90header_comment*/(/*RF2*/(((T198*)a1))->_header_comment/*12*/))==((void*)(NULL))){
  493. X90set_header_comment(a1,(/*RF2*/(C)->_header_comment/*12*/));
  494. }
  495. /*FI]*/
  496. }
  497. /*FI]*/
  498. }
  499.  
  500.  
  501. T0* r303a_default_rescue(T303* C,T0* a1,T0* a2){
  502. T0* R=NULL;
  503. T6 _do_it=0;
  504. /*[IF*/
  505. if(((/*RF2*/(C)->_local_vars/*40*/))!=((void*)(NULL))){
  506. _do_it=1;
  507. }
  508. /*FI]*/
  509. /*[IF*/
  510. if(((/*RF2*/(C)->_routine_body/*44*/))!=((void*)(NULL))){
  511. _do_it=!(/*(IRF4.7empty_or_null_body*/((/*RF2*/((T215*)((/*RF2*/(C)->_routine_body/*44*/)))->_first_one/*8*/))==(NULL)/*)*/);
  512. }
  513. /*FI]*/
  514. /*[IF*/
  515. if(_do_it){
  516. R=r303to_run_feature(C,(/*RF2*/(((T50*)a1))->_current_type/*0*/),a2);
  517. }
  518. /*FI]*/
  519. return R;
  520. }
  521.  
  522.  
  523. T68 r303start_position(T303* C){
  524. T68 R={NULL,0};
  525. {T68 se_tmp0;
  526. R=(*(se_tmp0=X82start_position(/*(IRF4.6first_name*/(/*RF2*/(((T83*)((/*RF2*/(C)->_names/*8*/))))->_first/*0*/)/*)*/),&se_tmp0));
  527. }
  528. return R;
  529. }
  530.  
  531.  
  532. void r392default_mapping_procedure(T392* C){
  533. r392default_mapping_function(C);
  534. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_138));
  535. /*]*/
  536. }
  537.  
  538.  
  539. T2 r392id(T392* C){
  540. T2 R=0;
  541. R=X52id((/*RF2*/(C)->_current_type/*8*/));
  542. return R;
  543. }
  544.  
  545.  
  546. void r392c_define(T392* C){
  547. T6 _once_wrapper=0;
  548. r325incr_precursor_routine_count((T325*)(oBC13cpp));
  549. _once_wrapper=r392is_once_procedure(C);
  550. /*[IF*/
  551. if(_once_wrapper){
  552. r363c_define_o_flag((T0*)C);
  553. }
  554. /*FI]*/
  555. r392define_prototype(C);
  556. /*[IF*/
  557. if(_once_wrapper){
  558. r363c_test_o_flag((T0*)C);
  559. }
  560. /*FI]*/
  561. r392c_define_opening(C);
  562. /*[IF*/
  563. if(((/*RF2*/(C)->_routine_body/*40*/))!=((void*)(NULL))){
  564. r215compile_to_c((T215*)((/*RF2*/(C)->_routine_body/*40*/)));
  565. }
  566. /*FI]*/
  567. r392c_define_closing(C);
  568. /*[IF*/
  569. if(_once_wrapper){
  570. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms392_500));
  571. /*]*/
  572. }
  573. /*FI]*/
  574. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_270a));
  575. /*]*/
  576. r392c_frame_descriptor(C);
  577. }
  578.  
  579.  
  580. T0* r392clients(T392* C){
  581. T0* R=NULL;
  582. T0* _bfbc=NULL;
  583. T0* _bc=NULL;
  584. /*[IF*/
  585. if(((/*RF2*/(C)->_clients_memory/*4*/))==((void*)(NULL))){
  586. _bc=X52base_class((/*RF2*/(C)->_current_type/*8*/));
  587. _bfbc=/*SSWARF2*//*X302base_class*/(/*RF2*/((T306*)((/*RF2*/(C)->_base_feature/*24*/)))->_base_class/*4*/);
  588. /*[IF*/
  589. if((_bc)==((void*)(_bfbc))){
  590. R=/*SSWARF2*//*X302clients*/(/*RF2*/((T306*)((/*RF2*/(C)->_base_feature/*24*/)))->_clients/*16*/);
  591. }
  592. else{
  593. R=r51clients_for(((T51*)_bc),(/*RF2*/(C)->_name/*12*/));
  594. }
  595. /*FI]*/
  596. (/*SFN*/C->_clients_memory)=R;
  597. }
  598. else{
  599. R=(/*RF2*/(C)->_clients_memory/*4*/);
  600. }
  601. /*FI]*/
  602. return R;
  603. }
  604.  
  605.  
  606. void r392put_c_name_tag(T392* C){
  607. T0* _fn=NULL;
  608. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  609. T3 b1=((T3)'\42');
  610. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  611. }/*]*/
  612. /*]*/
  613. _fn=/*SSFRF4*//*X302first_name*//*(IRF4.6first_name*/(/*RF2*/(((T83*)((/*RF2*/((T306*)((/*RF2*/(C)->_base_feature/*24*/)))->_names/*8*/))))->_first/*0*/)/*)*/;
  614. /*[IF*/
  615. if((X82to_key(_fn))!=((void*)(X82to_key((/*RF2*/(C)->_name/*12*/))))){
  616. X82put_cpp_tag((/*RF2*/(C)->_name/*12*/));
  617. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),X82to_string((/*RF2*/(C)->_name/*12*/)));
  618. /*]*/
  619. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  620. T3 b1=((T3)'\40');
  621. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  622. }/*]*/
  623. /*]*/
  624. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  625. T3 b1=((T3)'\50');
  626. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  627. }/*]*/
  628. /*]*/
  629. }
  630. /*FI]*/
  631. X82put_cpp_tag(_fn);
  632. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),X82to_string(_fn));
  633. /*]*/
  634. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms334_1108));
  635. /*]*/
  636. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),(/*RF2*/((T61*)(/*SSFRF4*//*X302base_class_name*//*(IRF4.6base_class_name*/(/*RF2*/(((T51*)((/*RF2*/((T306*)((/*RF2*/(C)->_base_feature/*24*/)))->_base_class/*4*/))))->_name/*18*/)/*)*/))->_to_string/*8*/));
  637. /*]*/
  638. /*[IF*/
  639. if((X82to_key(_fn))!=((void*)(X82to_key((/*RF2*/(C)->_name/*12*/))))){
  640. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  641. T3 b1=((T3)'\51');
  642. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  643. }/*]*/
  644. /*]*/
  645. }
  646. /*FI]*/
  647. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  648. T3 b1=((T3)'\42');
  649. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  650. }/*]*/
  651. /*]*/
  652. }
  653.  
  654.  
  655. void r392std_compute_use_current(T392* C){
  656. /*[IF*/
  657. if(((/*RF2*/(C)->_use_current_state/*16*/))==(24)){
  658. /*[IF*/
  659. if(((/*RF2*/(C)->_require_assertion/*32*/))!=((void*)(NULL))){
  660. /*[IF*/
  661. if(r376use_current((T376*)((/*RF2*/(C)->_require_assertion/*32*/)))){
  662. (/*SFN*/C->_use_current_state)=22;
  663. }
  664. /*FI]*/
  665. }
  666. /*FI]*/
  667. }
  668. /*FI]*/
  669. /*[IF*/
  670. if(((/*RF2*/(C)->_use_current_state/*16*/))==(24)){
  671. /*[IF*/
  672. if(((/*RF2*/(C)->_routine_body/*40*/))!=((void*)(NULL))){
  673. /*[IF*/
  674. if(r215use_current((T215*)((/*RF2*/(C)->_routine_body/*40*/)))){
  675. (/*SFN*/C->_use_current_state)=22;
  676. }
  677. /*FI]*/
  678. }
  679. /*FI]*/
  680. }
  681. /*FI]*/
  682. /*[IF*/
  683. if(((/*RF2*/(C)->_use_current_state/*16*/))==(24)){
  684. /*[IF*/
  685. if(((/*RF2*/(C)->_rescue_compound/*44*/))!=((void*)(NULL))){
  686. /*[IF*/
  687. if(r215use_current((T215*)((/*RF2*/(C)->_rescue_compound/*44*/)))){
  688. (/*SFN*/C->_use_current_state)=22;
  689. }
  690. /*FI]*/
  691. }
  692. /*FI]*/
  693. }
  694. /*FI]*/
  695. /*[IF*/
  696. if(((/*RF2*/(C)->_use_current_state/*16*/))==(24)){
  697. /*[IF*/
  698. if(((/*RF2*/(C)->_ensure_assertion/*48*/))!=((void*)(NULL))){
  699. /*[IF*/
  700. if(r214use_current((T214*)((/*RF2*/(C)->_ensure_assertion/*48*/)))){
  701. (/*SFN*/C->_use_current_state)=22;
  702. }
  703. /*FI]*/
  704. }
  705. /*FI]*/
  706. }
  707. /*FI]*/
  708. /*[IF*/
  709. if(((/*RF2*/(C)->_use_current_state/*16*/))==(24)){
  710. (/*SFN*/C->_use_current_state)=21;
  711. }
  712. /*FI]*/
  713. }
  714.  
  715.  
  716. T0* r392run_ensure(T392* C){
  717. T0* R=NULL;
  718. R=r51run_ensure((T51*)(X52base_class((/*RF2*/(C)->_current_type/*8*/))),(T0*)C);
  719. return R;
  720. }
  721.  
  722.  
  723. void r392make(T392* C,T0* a1,T0* a2,T0* a3){
  724. (/*SFN*/C->_current_type)=a1;
  725. (/*SFN*/C->_name)=a2;
  726. (/*SFN*/C->_base_feature)=a3;
  727. r50add_rf((T50*)(r392run_class(C)),(T0*)C,X82to_key(a2));
  728. r49incr_magic_count((T49*)(oBC13small_eiffel));
  729. (/*SFN*/C->_use_current_state)=23;
  730. (/*SFN*/C->_stupid_switch_state)=23;
  731. r49push((T49*)(oBC13small_eiffel),(T0*)C);
  732. r392initialize(C);
  733. r49pop((T49*)(oBC13small_eiffel));
  734. }
  735.  
  736.  
  737. void r392default_mapping_function(T392* C){
  738. T6 _tcbd=0;
  739. T6 _uc=0;
  740. T6 _no_check=0;
  741. _no_check=r47no_check((T47*)(oBC13run_control));
  742. _uc=r392use_current(C);
  743. /*[IF*/
  744. if(!(_uc)){
  745. _tcbd=r325target_cannot_be_dropped((T325*)(oBC13cpp));
  746. /*[IF*/
  747. if(_tcbd){
  748. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  749. T3 b1=((T3)'\54');
  750. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  751. }/*]*/
  752. /*]*/
  753. }
  754. /*FI]*/
  755. }
  756. /*FI]*/
  757. r392mapping_name(C);
  758. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  759. T3 b1=((T3)'\50');
  760. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  761. }/*]*/
  762. /*]*/
  763. /*[IF*/
  764. if(_no_check){
  765. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms334_759));
  766. /*]*/
  767. }
  768. /*FI]*/
  769. /*[IF*/
  770. if(_uc){
  771. /*[IF*/
  772. if(_no_check){
  773. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  774. T3 b1=((T3)'\54');
  775. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  776. }/*]*/
  777. /*]*/
  778. }
  779. /*FI]*/
  780. r325put_target_as_target((T325*)(oBC13cpp));
  781. }
  782. /*FI]*/
  783. /*[IF*/
  784. if(((/*RF2*/(C)->_arguments/*28*/))!=((void*)(NULL))){
  785. /*[IF*/
  786. if((_uc)||(_no_check)){
  787. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  788. T3 b1=((T3)'\54');
  789. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  790. }/*]*/
  791. /*]*/
  792. }
  793. /*FI]*/
  794. r325put_arguments((T325*)(oBC13cpp));
  795. }
  796. /*FI]*/
  797. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  798. T3 b1=((T3)'\51');
  799. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  800. }/*]*/
  801. /*]*/
  802. /*[IF*/
  803. if((!(_uc))&&(_tcbd)){
  804. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  805. T3 b1=((T3)'\51');
  806. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  807. }/*]*/
  808. /*]*/
  809. }
  810. /*FI]*/
  811. }
  812.  
  813.  
  814. void r392c_assertion_flag(T392* C){
  815. /*[IRF3.3clear*/((((T7*)((T7*)(oBC334c_code))))->_count)=(0);
  816. /*]*/
  817. r392c_frame_descriptor_name_in(C,oBC334c_code);
  818. r7append((T7*)(oBC334c_code),((T0*)ms334_30285));
  819. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),oBC334c_code);
  820. /*]*/
  821. }
  822.  
  823.  
  824. void r392c_define_opening(T392* C){
  825. T0* _oresult=NULL;
  826. T6 _ensure_check=0;
  827. T6 _no_check=0;
  828. T0* _t=NULL;
  829. _no_check=r47no_check((T47*)(oBC13run_control));
  830. _ensure_check=r47ensure_check((T47*)(oBC13run_control));
  831. /*[IF*/
  832. if(((/*RF2*/(C)->_rescue_compound/*44*/))!=((void*)(NULL))){
  833. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms334_21346));
  834. /*]*/
  835. }
  836. /*FI]*/
  837. /*[IF*/
  838. /*AF*//*AF*//*AE*/
  839. /*FI]*/
  840. /*[IF*/
  841. if(((/*RF2*/(C)->_local_vars/*36*/))!=((void*)(NULL))){
  842. r169c_declare((T169*)((/*RF2*/(C)->_local_vars/*36*/)));
  843. }
  844. /*FI]*/
  845. /*[IF*/
  846. if(_ensure_check){
  847. /*[IF*/
  848. if(((/*RF2*/(C)->_ensure_assertion/*48*/))!=((void*)(NULL))){
  849. r214c_declare_for_old((T214*)((/*RF2*/(C)->_ensure_assertion/*48*/)));
  850. }
  851. /*FI]*/
  852. }
  853. /*FI]*/
  854. /*[IF*/
  855. if(_no_check){
  856. /*[IF*/
  857. if(((/*RF2*/((T203*)(oBC13c_frame_descriptor_local_count))->_value/*0*/))>(0)){
  858. r7copy((T7*)(oBC334c_code),((T0*)ms334_21567));
  859. /*[IRF3.5append_in*/r2append_in(((T2)((/*RF2*/((T203*)(oBC13c_frame_descriptor_local_count))->_value/*0*/))),oBC334c_code);
  860. /*]*/
  861. r7extend((T7*)(oBC334c_code),((T3)'\135'));
  862. r7append((T7*)(oBC334c_code),((T0*)ms14_138));
  863. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),oBC334c_code);
  864. /*]*/
  865. }
  866. /*FI]*/
  867. r392c_initialize_ds_one_by_one(C);
  868. /*[IRF3.2c_initialize_locals_one_by_one*/{T3 _c=0;
  869. T2 _j=0;
  870. T2 _i=0;
  871. _j=1;
  872. while (!(((/*RF2*/((T203*)(oBC13c_frame_descriptor_local_count))->_value/*0*/))==(_i)))
  873. {
  874. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms334_8120));
  875. /*]*/
  876. /*[IRF3.5put_integer*/r48put_integer(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),_i);
  877. /*]*/
  878. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms334_308));
  879. /*]*/
  880. _c=/*(IRF4.6item*/((/*RF2*/((T7*)(oBC13c_frame_descriptor_locals))->_storage/*0*/))[(_j)-(1)]/*)*/;
  881. while (!((_c)==(((T3)'\54'))))
  882. {
  883. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  884. T3 b1=_c;
  885. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  886. }/*]*/
  887. /*]*/
  888. _j=(_j)+(1);
  889. _c=/*(IRF4.6item*/((/*RF2*/((T7*)(oBC13c_frame_descriptor_locals))->_storage/*0*/))[(_j)-(1)]/*)*/;
  890. }
  891. _j=(_j)+(1);
  892. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_138));
  893. /*]*/
  894. _i=(_i)+(1);
  895. }
  896. }/*]*/
  897. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms334_14520a));
  898. /*]*/
  899. }
  900. /*FI]*/
  901. /*[IF*/
  902. if(_ensure_check){
  903. /*[IF*/
  904. if(((/*RF2*/(C)->_ensure_assertion/*48*/))!=((void*)(NULL))){
  905. r214compile_to_c_old((T214*)((/*RF2*/(C)->_ensure_assertion/*48*/)));
  906. }
  907. /*FI]*/
  908. }
  909. /*FI]*/
  910. /*[IF*/
  911. if(((/*RF2*/(C)->_rescue_compound/*44*/))!=((void*)(NULL))){
  912. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms334_23008));
  913. /*]*/
  914. r215compile_to_c((T215*)((/*RF2*/(C)->_rescue_compound/*44*/)));
  915. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms334_47752));
  916. /*]*/
  917. }
  918. /*FI]*/
  919. /*[IF*/
  920. if(((/*RF2*/(C)->_local_vars/*36*/))!=((void*)(NULL))){
  921. r169initialize_expanded((T169*)((/*RF2*/(C)->_local_vars/*36*/)));
  922. }
  923. /*FI]*/
  924. /*[IF*/
  925. if(((/*RF2*/(C)->_rescue_compound/*44*/))!=((void*)(NULL))){
  926. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms334_7436));
  927. /*]*/
  928. }
  929. /*FI]*/
  930. /*[IF*/
  931. if(((/*RF2*/(C)->_require_assertion/*32*/))!=((void*)(NULL))){
  932. r376compile_to_c((T376*)((/*RF2*/(C)->_require_assertion/*32*/)));
  933. }
  934. /*FI]*/
  935. /*[IF*/
  936. if(((/*RF2*/(C)->_rescue_compound/*44*/))!=((void*)(NULL))){
  937. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms334_57680));
  938. /*]*/
  939. /*[IF*/
  940. if(_no_check){
  941. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms334_11988));
  942. /*]*/
  943. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms334_14520));
  944. /*]*/
  945. }
  946. /*FI]*/
  947. }
  948. /*FI]*/
  949. }
  950.  
  951.  
  952. void r392c_define_closing(T392* C){
  953. /*[IF*/
  954. if(r47ensure_check((T47*)(oBC13run_control))){
  955. /*[IF*/
  956. if(((/*RF2*/(C)->_ensure_assertion/*48*/))!=((void*)(NULL))){
  957. r214compile_to_c((T214*)((/*RF2*/(C)->_ensure_assertion/*48*/)));
  958. }
  959. /*FI]*/
  960. }
  961. /*FI]*/
  962. /*[IF*/
  963. if(r392use_current(C)){
  964. /*[IF*/
  965. if((X82to_string((/*RF2*/(C)->_name/*12*/)))!=((void*)(((T0*)ms15_8750)))){
  966. r325current_class_invariant((/*RF2*/(C)->_current_type/*8*/));
  967. }
  968. /*FI]*/
  969. }
  970. /*FI]*/
  971. /*[IF*/
  972. if(((/*RF2*/(C)->_rescue_compound/*44*/))!=((void*)(NULL))){
  973. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms334_25380));
  974. /*]*/
  975. }
  976. /*FI]*/
  977. /*[IF*/
  978. if(r47no_check((T47*)(oBC13run_control))){
  979. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms334_19400));
  980. /*]*/
  981. }
  982. /*FI]*/
  983. }
  984.  
  985.  
  986. void r392initialize(T392* C){
  987. (/*SFN*/C->_arguments)=/*SSWARF2*//*X302arguments*/(/*RF2*/((T306*)((/*RF2*/(C)->_base_feature/*24*/)))->_arguments/*20*/);
  988. /*[IF*/
  989. if(((/*RF2*/(C)->_arguments/*28*/))!=((void*)(NULL))){
  990. /*[IF*/
  991. if(!(r178is_runnable((T178*)((/*RF2*/(C)->_arguments/*28*/)),(/*RF2*/(C)->_current_type/*8*/)))){
  992. {T178*n=((T178*)malloc(sizeof(*n))/*12*/);
  993. *n=M178;
  994. r178with(n,(/*RF2*/(C)->_arguments/*28*/),(/*RF2*/(C)->_current_type/*8*/));
  995. (/*SFN*/C->_arguments)=((T0*)n);
  996. }
  997. }
  998. /*FI]*/
  999. }
  1000. /*FI]*/
  1001. (/*SFN*/C->_local_vars)=/*SSWARF2*//*X302local_vars*/(/*RF2*/((T306*)((/*RF2*/(C)->_base_feature/*24*/)))->_local_vars/*40*/);
  1002. /*[IF*/
  1003. if(((/*RF2*/(C)->_local_vars/*36*/))!=((void*)(NULL))){
  1004. (/*SFN*/C->_local_vars)=r169to_runnable((T169*)((/*RF2*/(C)->_local_vars/*36*/)),(/*RF2*/(C)->_current_type/*8*/));
  1005. }
  1006. /*FI]*/
  1007. (/*SFN*/C->_routine_body)=/*SSWARF2*//*X302routine_body*/(/*RF2*/((T306*)((/*RF2*/(C)->_base_feature/*24*/)))->_routine_body/*44*/);
  1008. /*[IF*/
  1009. if(((/*RF2*/(C)->_routine_body/*40*/))!=((void*)(NULL))){
  1010. (/*SFN*/C->_routine_body)=r215to_runnable((T215*)((/*RF2*/(C)->_routine_body/*40*/)),(/*RF2*/(C)->_current_type/*8*/));
  1011. }
  1012. /*FI]*/
  1013. /*[IF*/
  1014. if(r47require_check((T47*)(oBC13run_control))){
  1015. (/*SFN*/C->_require_assertion)=r392run_require(C);
  1016. }
  1017. /*FI]*/
  1018. /*[IF*/
  1019. if(r47ensure_check((T47*)(oBC13run_control))){
  1020. (/*SFN*/C->_ensure_assertion)=r392run_ensure(C);
  1021. }
  1022. /*FI]*/
  1023. (/*SFN*/C->_rescue_compound)=/*SSWARF2*//*X302rescue_compound*/(/*RF2*/((T306*)((/*RF2*/(C)->_base_feature/*24*/)))->_rescue_compound/*48*/);
  1024. /*[IF*/
  1025. if(((/*RF2*/(C)->_rescue_compound/*44*/))!=((void*)(NULL))){
  1026. /*[IRF3.3set_used*/((((T380*)((T380*)(oBC13exceptions_handler))))->_used)=(1);
  1027. /*]*/
  1028. (/*SFN*/C->_rescue_compound)=r215to_runnable((T215*)((/*RF2*/(C)->_rescue_compound/*44*/)),(/*RF2*/(C)->_current_type/*8*/));
  1029. }
  1030. /*FI]*/
  1031. /*[IF*/
  1032. if(r392is_once_procedure(C)){
  1033. r363register_procedure((T0*)C);
  1034. }
  1035. /*FI]*/
  1036. }
  1037.  
  1038.  
  1039. void r392std_compute_stupid_switch(T392* C,T0* a1){
  1040. T0* _rt=NULL;
  1041. _rt=/*(IRF4.1result_type*/NULL/*)*/;
  1042. /*[IF*/
  1043. if(((_rt)!=((void*)(NULL)))&&(X52is_user_expanded(_rt))){
  1044. (/*SFN*/C->_stupid_switch_state)=21;
  1045. }
  1046. /*FI]*/
  1047. /*[IF*/
  1048. if(((/*RF2*/(C)->_stupid_switch_state/*20*/))==(24)){
  1049. /*[IF*/
  1050. if(((/*RF2*/(C)->_routine_body/*40*/))!=((void*)(NULL))){
  1051. /*[IF*/
  1052. if(!(r215stupid_switch((T215*)((/*RF2*/(C)->_routine_body/*40*/)),a1))){
  1053. (/*SFN*/C->_stupid_switch_state)=21;
  1054. }
  1055. /*FI]*/
  1056. }
  1057. /*FI]*/
  1058. }
  1059. /*FI]*/
  1060. /*[IF*/
  1061. if(((/*RF2*/(C)->_stupid_switch_state/*20*/))==(24)){
  1062. /*[IF*/
  1063. if(((/*RF2*/(C)->_rescue_compound/*44*/))!=((void*)(NULL))){
  1064. /*[IF*/
  1065. if(!(r215stupid_switch((T215*)((/*RF2*/(C)->_rescue_compound/*44*/)),a1))){
  1066. (/*SFN*/C->_stupid_switch_state)=21;
  1067. }
  1068. /*FI]*/
  1069. }
  1070. /*FI]*/
  1071. }
  1072. /*FI]*/
  1073. /*[IF*/
  1074. if(((/*RF2*/(C)->_stupid_switch_state/*20*/))==(24)){
  1075. (/*SFN*/C->_stupid_switch_state)=22;
  1076. }
  1077. /*FI]*/
  1078. }
  1079.  
  1080.  
  1081. void r392routine_afd_check(T392* C){
  1082. /*[IF*/
  1083. if(((/*RF2*/(C)->_require_assertion/*32*/))!=((void*)(NULL))){
  1084. r376afd_check((T376*)((/*RF2*/(C)->_require_assertion/*32*/)));
  1085. }
  1086. /*FI]*/
  1087. /*[IF*/
  1088. if(((/*RF2*/(C)->_routine_body/*40*/))!=((void*)(NULL))){
  1089. r215afd_check((T215*)((/*RF2*/(C)->_routine_body/*40*/)));
  1090. }
  1091. /*FI]*/
  1092. /*[IF*/
  1093. if(((/*RF2*/(C)->_rescue_compound/*44*/))!=((void*)(NULL))){
  1094. r215afd_check((T215*)((/*RF2*/(C)->_rescue_compound/*44*/)));
  1095. }
  1096. /*FI]*/
  1097. /*[IF*/
  1098. if(((/*RF2*/(C)->_ensure_assertion/*48*/))!=((void*)(NULL))){
  1099. r214afd_check((T214*)((/*RF2*/(C)->_ensure_assertion/*48*/)));
  1100. }
  1101. /*FI]*/
  1102. }
  1103.  
  1104.  
  1105. T68 r392start_position(T392* C){
  1106. T68 R={NULL,0};
  1107. {T68 se_tmp0;
  1108. R=(*(se_tmp0=X302start_position((/*RF2*/(C)->_base_feature/*24*/)),&se_tmp0));
  1109. }
  1110. return R;
  1111. }
  1112.  
  1113.  
  1114. T0* r392run_require(T392* C){
  1115. T0* R=NULL;
  1116. R=r51run_require((T51*)(X52base_class((/*RF2*/(C)->_current_type/*8*/))),(T0*)C);
  1117. return R;
  1118. }
  1119.  
  1120.  
  1121. void r392mapping_name(T392* C){
  1122. /*[IRF3.3clear*/((((T7*)((T7*)(oBC334c_code))))->_count)=(0);
  1123. /*]*/
  1124. r7extend((T7*)(oBC334c_code),((T3)'r'));
  1125. r2append_in(r392id(C),oBC334c_code);
  1126. X82mapping_c_in((/*RF2*/(C)->_name/*12*/),oBC334c_code);
  1127. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),oBC334c_code);
  1128. /*]*/
  1129. }
  1130.  
  1131.  
  1132. void r392c_initialize_ds_one_by_one(T392* C){
  1133. r7copy((T7*)(oBC334c_code),((T0*)ms334_36950));
  1134. r392c_frame_descriptor_name_in(C,oBC334c_code);
  1135. r7append((T7*)(oBC334c_code),((T0*)ms14_138));
  1136. /*[IF*/
  1137. if(r392use_current(C)){
  1138. r7append((T7*)(oBC334c_code),((T0*)ms334_18175));
  1139. }
  1140. else{
  1141. r7append((T7*)(oBC334c_code),((T0*)ms334_10999));
  1142. }
  1143. /*FI]*/
  1144. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),oBC334c_code);
  1145. /*]*/
  1146. {T68 se_tmp0;
  1147. r325put_position_in_ds((*(se_tmp0=r392start_position(C),&se_tmp0)));
  1148. }
  1149. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms334_11466));
  1150. /*]*/
  1151. /*[IF*/
  1152. if(((/*RF2*/((T203*)(oBC13c_frame_descriptor_local_count))->_value/*0*/))>(0)){
  1153. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms334_11880));
  1154. /*]*/
  1155. }
  1156. /*FI]*/
  1157. }
  1158.  
  1159.  
  1160. T6 r392use_current(T392* C){
  1161. T6 R=0;
  1162. {int z1=(/*RF2*/(C)->_use_current_state/*16*/);
  1163.  
  1164. if((22==z1)){
  1165. R=1;
  1166. }
  1167.  else 
  1168. if((21==z1)){
  1169. }
  1170.  else 
  1171. if((23==z1)){
  1172. (/*SFN*/C->_use_current_state)=24;
  1173. /*[IRF3.4compute_use_current*/r392std_compute_use_current(C);
  1174. /*]*/
  1175. R=((/*RF2*/(C)->_use_current_state/*16*/))==(22);
  1176. }
  1177.  else {R=1;
  1178. }}
  1179. return R;
  1180. }
  1181.  
  1182.  
  1183. T6 r392is_exported_in(T392* C,T0* a1){
  1184. T6 R=0;
  1185. R=r99gives_permission_to((T99*)(r392clients(C)),a1);
  1186. return R;
  1187. }
  1188.  
  1189.  
  1190. T6 r392is_once_procedure(T392* C){
  1191. T6 R=0;
  1192. T0* _once_procedure=NULL;
  1193. _once_procedure=(/*RF2*/(C)->_base_feature/*24*/);
  1194. if(NULL!=(_once_procedure)){
  1195. switch(((T0*)_once_procedure)->id){
  1196. case 306:
  1197. break;
  1198. default:
  1199. _once_procedure=NULL;
  1200. }
  1201. }R=(_once_procedure)!=((void*)(NULL));
  1202. return R;
  1203. }
  1204.  
  1205.  
  1206. T0* r392run_class(T392* C){
  1207. T0* R=NULL;
  1208. R=X52run_class((/*RF2*/(C)->_current_type/*8*/));
  1209. return R;
  1210. }
  1211.  
  1212.  
  1213. void r392fatal_error(T0* a1){
  1214. /*[IRF3.6append*/{T0* b1=a1;
  1215. r7append((T7*)(oBC66explanation),b1);
  1216. }/*]*/
  1217. r66print_as_fatal_error((T66*)(oBC13eh));
  1218. }
  1219.  
  1220.  
  1221. T0* r392stupid_switch(T392* C,T0* a1){
  1222. T0* R=NULL;
  1223. {int z1=(/*RF2*/(C)->_stupid_switch_state/*20*/);
  1224.  
  1225. if((22==z1)){
  1226. R=((T0*)ms392_5138);
  1227. }
  1228.  else 
  1229. if((21==z1)){
  1230. }
  1231.  else 
  1232. if((23==z1)){
  1233. (/*SFN*/C->_stupid_switch_state)=24;
  1234. /*[IRF3.6compute_stupid_switch*/{T392* C1=C;
  1235. T0* b1=a1;
  1236. r392std_compute_stupid_switch(C1,b1);
  1237. }/*]*/
  1238. /*[IF*/
  1239. if(((/*RF2*/(C)->_stupid_switch_state/*20*/))==(22)){
  1240. R=((T0*)ms392_5138);
  1241. }
  1242. /*FI]*/
  1243. }
  1244.  else {}}
  1245. return R;
  1246. }
  1247.  
  1248.  
  1249. void r392define_prototype(T392* C){
  1250. T6 _no_check=0;
  1251. T2 _mem_id=0;
  1252. _no_check=r47no_check((T47*)(oBC13run_control));
  1253. /*[IF*/
  1254. if(r47no_check((T47*)(oBC13run_control))){
  1255. /*[IRF3.3reset*/((((T203*)((T203*)(oBC13c_frame_descriptor_local_count))))->_value)=(0);
  1256. /*]*/
  1257. /*[IRF3.3clear*/((((T7*)((T7*)(oBC13c_frame_descriptor_format))))->_count)=(0);
  1258. /*]*/
  1259. r7extend((T7*)(oBC13c_frame_descriptor_format),((T3)'\42'));
  1260. /*[IRF3.3clear*/((((T7*)((T7*)(oBC13c_frame_descriptor_locals))))->_count)=(0);
  1261. /*]*/
  1262. }
  1263. /*FI]*/
  1264. _mem_id=r392id(C);
  1265. /*[IRF3.3clear*/((((T7*)((T7*)(oBC334c_code))))->_count)=(0);
  1266. /*]*/
  1267. /*[IF*/
  1268. {/*AT*/r7append((T7*)(oBC334c_code),((T0*)ms14_1736a));
  1269. }
  1270. /*FI]*/
  1271. r7extend((T7*)(oBC334c_code),((T3)'\40'));
  1272. r7extend((T7*)(oBC334c_code),((T3)'r'));
  1273. r2append_in(_mem_id,oBC334c_code);
  1274. X82mapping_c_in((/*RF2*/(C)->_name/*12*/),oBC334c_code);
  1275. r7extend((T7*)(oBC334c_code),((T3)'\50'));
  1276. /*[IF*/
  1277. if(_no_check){
  1278. r7append((T7*)(oBC334c_code),((T0*)ms334_56160));
  1279. /*[IF*/
  1280. if((r392use_current(C))||(((/*RF2*/(C)->_arguments/*28*/))!=((void*)(NULL)))){
  1281. r7extend((T7*)(oBC334c_code),((T3)'\54'));
  1282. }
  1283. /*FI]*/
  1284. }
  1285. /*FI]*/
  1286. /*[IF*/
  1287. if(r392use_current(C)){
  1288. X52c_type_for_target_in((/*RF2*/(C)->_current_type/*8*/),oBC334c_code);
  1289. r7extend((T7*)(oBC334c_code),((T3)'\40'));
  1290. r7extend((T7*)(oBC334c_code),((T3)'C'));
  1291. X52c_frame_descriptor((/*RF2*/(C)->_current_type/*8*/));
  1292. /*[IF*/
  1293. if(((/*RF2*/(C)->_arguments/*28*/))!=((void*)(NULL))){
  1294. r7extend((T7*)(oBC334c_code),((T3)'\54'));
  1295. }
  1296. /*FI]*/
  1297. }
  1298. /*FI]*/
  1299. /*[IF*/
  1300. if(((/*RF2*/(C)->_arguments/*28*/))==((void*)(NULL))){
  1301. /*[IF*/
  1302. if(_no_check){
  1303. }
  1304.  else if(!(r392use_current(C))){
  1305. r7append((T7*)(oBC334c_code),((T0*)ms14_1736a));
  1306. }
  1307. /*FI]*/
  1308. }
  1309. else{
  1310. r178compile_to_c_in((T178*)((/*RF2*/(C)->_arguments/*28*/)),oBC334c_code);
  1311. }
  1312. /*FI]*/
  1313. r7extend((T7*)(oBC334c_code),((T3)'\51'));
  1314. r325put_c_heading((T325*)(oBC13cpp),oBC334c_code);
  1315. /*[IRF3.3swap_on_c*/((((T325*)((T325*)(oBC13cpp))))->_current_out)=(oBC325out_c);
  1316. /*]*/
  1317. }
  1318.  
  1319.  
  1320. void r392c_frame_descriptor(T392* C){
  1321. /*[IF*/
  1322. if(r47no_check((T47*)(oBC13run_control))){
  1323. r7copy((T7*)(oBC334c_code),((T0*)ms334_23340));
  1324. r392c_frame_descriptor_name_in(C,oBC334c_code);
  1325. r325put_extern7((T325*)(oBC13cpp),oBC334c_code);
  1326. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  1327. T3 b1=((T3)'\173');
  1328. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  1329. }/*]*/
  1330. /*]*/
  1331. r392put_c_name_tag(C);
  1332. /*[IRF3.3clear*/((((T7*)((T7*)(oBC334c_code))))->_count)=(0);
  1333. /*]*/
  1334. r7extend((T7*)(oBC334c_code),((T3)'\54'));
  1335. /*[IF*/
  1336. if(r392use_current(C)){
  1337. r7extend((T7*)(oBC334c_code),((T3)'1'));
  1338. }
  1339. else{
  1340. r7extend((T7*)(oBC334c_code),((T3)'0'));
  1341. }
  1342. /*FI]*/
  1343. r7extend((T7*)(oBC334c_code),((T3)'\54'));
  1344. /*[IRF3.5append_in*/r2append_in(((T2)((/*RF2*/((T203*)(oBC13c_frame_descriptor_local_count))->_value/*0*/))),oBC334c_code);
  1345. /*]*/
  1346. r7extend((T7*)(oBC334c_code),((T3)'\54'));
  1347. r7append((T7*)(oBC334c_code),oBC13c_frame_descriptor_format);
  1348. r7append((T7*)(oBC334c_code),((T0*)ms334_2226));
  1349. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),oBC334c_code);
  1350. /*]*/
  1351. }
  1352. /*FI]*/
  1353. }
  1354.  
  1355.  
  1356. void r392c_frame_descriptor_name_in(T392* C,T0* a1){
  1357. r7extend(((T7*)a1),((T3)'f'));
  1358. r2append_in(r392id(C),a1);
  1359. X82mapping_c_in((/*RF2*/(C)->_name/*12*/),a1);
  1360. }
  1361.  
  1362.  
  1363. void r259gc_free_in(T0* a1){
  1364. r7append(((T7*)a1),((T0*)ms52_8540));
  1365. r2append_in(10,a1);
  1366. }
  1367.  
  1368.  
  1369. void r259standard_c_object_model(T259* C){
  1370. T0* _rc=NULL;
  1371. T2 _mem_id=0;
  1372. _rc=r259run_class(C);
  1373. _mem_id=(/*RF2*/(((T50*)_rc))->_id/*4*/);
  1374. /*[IRF3.3clear*/((((T7*)((T7*)(((T0*)ms52_783104)))))->_count)=(0);
  1375. /*]*/
  1376. r7extend((T7*)(((T0*)ms52_783104)),((T3)'T'));
  1377. r2append_in(_mem_id,((T0*)ms52_783104));
  1378. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\40'));
  1379. r7extend((T7*)(((T0*)ms52_783104)),((T3)'M'));
  1380. r2append_in(_mem_id,((T0*)ms52_783104));
  1381. r325put_extern7((T325*)(oBC13cpp),((T0*)ms52_783104));
  1382. /*[IRF3.3swap_on_c*/((((T325*)((T325*)(oBC13cpp))))->_current_out)=(oBC325out_c);
  1383. /*]*/
  1384. /*[IRF3.3clear*/((((T7*)((T7*)(((T0*)ms52_783104)))))->_count)=(0);
  1385. /*]*/
  1386. r50c_object_model_in(((T50*)_rc),((T0*)ms52_783104));
  1387. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms14_138));
  1388. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms52_783104));
  1389. /*]*/
  1390. r325swap_on_h((T325*)(oBC13cpp));
  1391. }
  1392.  
  1393.  
  1394. void r259standard_gc_info_in(T0* a1){
  1395. r7append(((T7*)a1),((T0*)ms52_22591a));
  1396. r7append(((T7*)a1),r259run_time_mark());
  1397. r7append(((T7*)a1),((T0*)ms14_5895));
  1398. r259gc_info_nb_in(a1);
  1399. r7append(((T7*)a1),((T0*)ms14_330));
  1400. r7append(((T7*)a1),((T0*)ms52_22591));
  1401. r259gc_store_left_in(a1);
  1402. r7append(((T7*)a1),((T0*)ms14_5895));
  1403. r259gc_store_left_in(a1);
  1404. r7append(((T7*)a1),((T0*)ms14_330));
  1405. }
  1406.  
  1407.  
  1408. T0* r259generic_list(T259* C){
  1409. T0* R=NULL;
  1410. r259fatal_error_generic_list(C);
  1411. return R;
  1412. }
  1413.  
  1414.  
  1415. void r259standard_c_print_function(T259* C){
  1416. /*[IF*/
  1417. if(r47no_check((T47*)(oBC13run_control))){
  1418. r50c_print_function((T50*)(r259run_class(C)));
  1419. }
  1420. /*FI]*/
  1421. }
  1422.  
  1423.  
  1424. void r259cast_to_ref(T259* C){
  1425. X52cast_to_ref(/*(IRF4.4run_type*/((T0*)(C))/*)*/);
  1426. }
  1427.  
  1428.  
  1429. void r259gc_call_new_in(T0* a1){
  1430. r7append(((T7*)a1),((T0*)ms14_990));
  1431. r2append_in(10,a1);
  1432. r7extend(((T7*)a1),((T3)'\50'));
  1433. r7extend(((T7*)a1),((T3)'\51'));
  1434. }
  1435.  
  1436.  
  1437. void r259standard_c_struct(T259* C){
  1438. T0* _t=NULL;
  1439. T0* _a=NULL;
  1440. T2 _mem_id=0;
  1441. T2 _i=0;
  1442. T0* _wa=NULL;
  1443. _mem_id=10;
  1444. _wa=r50writable_attributes((T50*)(r259run_class(C)));
  1445. r7copy((T7*)(((T0*)ms52_783104)),((T0*)ms14_5495));
  1446. r7extend((T7*)(((T0*)ms52_783104)),((T3)'S'));
  1447. r2append_in(_mem_id,((T0*)ms52_783104));
  1448. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\173'));
  1449. /*[IF*/
  1450. {/*AT*//*[IF*/
  1451. if(r50is_tagged((T50*)(r259run_class(C)))){
  1452. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms52_5873));
  1453. }
  1454. /*FI]*/
  1455. }
  1456. /*FI]*/
  1457. /*[IF*/
  1458. if((_wa)!=((void*)(NULL))){
  1459. _i=(/*RF2*/(((T346*)_wa))->_upper/*12*/);
  1460. while (!((_i)==(0)))
  1461. {
  1462. _a=r346item(((T346*)_wa),_i);
  1463. _t=X52run_type((/*RF2*/(((T345*)_a))->_result_type/*28*/));
  1464. X52c_type_for_result_in(_t,((T0*)ms52_783104));
  1465. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\40'));
  1466. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\137'));
  1467. r7append((T7*)(((T0*)ms52_783104)),X82to_string((/*RF2*/(((T345*)_a))->_name/*12*/)));
  1468. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\73'));
  1469. _i=(_i)-(1);
  1470. }
  1471. }
  1472. /*FI]*/
  1473. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\175'));
  1474. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms14_138));
  1475. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms52_783104));
  1476. /*]*/
  1477. /*[IF*/
  1478. /*AF*//*AE*/
  1479. /*FI]*/
  1480. }
  1481.  
  1482.  
  1483. T0* r259base_class(T259* C){
  1484. T0* R=NULL;
  1485. T0* _bcn=NULL;
  1486. _bcn=(/*RF2*/(C)->_base_class_name/*4*/);
  1487. /*[IF*/
  1488. if((_bcn)!=((void*)(NULL))){
  1489. R=r61base_class(((T61*)_bcn));
  1490. }
  1491. else{
  1492. /*[IRF3.6append*/{T0* b1=((T0*)ms52_36693);
  1493. r7append((T7*)(oBC66explanation),b1);
  1494. }/*]*/
  1495. r66add_type((T0*)C,((T0*)ms14_46));
  1496. r66print_as_fatal_error((T66*)(oBC13eh));
  1497. }
  1498. /*FI]*/
  1499. return R;
  1500. }
  1501.  
  1502.  
  1503. void r259gc_store_chunk_in(T0* a1){
  1504. r7append(((T7*)a1),((T0*)ms52_19074));
  1505. r2append_in(10,a1);
  1506. }
  1507.  
  1508.  
  1509. T0* r259look_up_for(T259* C,T0* a1,T0* a2){
  1510. T0* R=NULL;
  1511. R=r51look_up_for((T51*)(r259base_class(C)),a1,a2);
  1512. return R;
  1513. }
  1514.  
  1515.  
  1516. T6 r259has_creation(T259* C,T0* a1){
  1517. T6 R=0;
  1518. {T68 se_tmp0;
  1519. r66add_position((*(se_tmp0=X82start_position(a1),&se_tmp0)));
  1520. }
  1521. r259error(/*(IRF4.6start_position*/(/*RF2*/(((T61*)((/*RF2*/(C)->_base_class_name/*4*/))))->_start_position/*0*/)/*)*/,((T0*)ms259_27080));
  1522. return R;
  1523. }
  1524.  
  1525.  
  1526. void r259error(T68 a1,T0* a2){
  1527. r66add_position(a1);
  1528. /*[IRF3.6append*/{T0* b1=a2;
  1529. r7append((T7*)(oBC66explanation),b1);
  1530. }/*]*/
  1531. r66print_as_error((T66*)(oBC13eh));
  1532. }
  1533.  
  1534.  
  1535. T6 r259need_c_struct(T259* C){
  1536. T6 R=0;
  1537. /*[IF*/
  1538. if(r50is_tagged((T50*)(r259run_class(C)))){
  1539. R=1;
  1540. }
  1541. else{
  1542. R=(r50writable_attributes((T50*)(r259run_class(C))))!=((void*)(NULL));
  1543. }
  1544. /*FI]*/
  1545. return R;
  1546. }
  1547.  
  1548.  
  1549. void r259gc_align_mark_in(T0* a1){
  1550. r7append(((T7*)a1),((T0*)ms52_24609));
  1551. r2append_in(10,a1);
  1552. }
  1553.  
  1554.  
  1555. T6 r259is_a_in(T259* C,T0* a1,T0* a2){
  1556. T6 R=0;
  1557. T0* _ct=NULL;
  1558. T0* _t2=NULL;
  1559. T0* _t1=NULL;
  1560. /*[IF*/
  1561. if((r259written_mark())==((void*)(X52written_mark(a1)))){
  1562. R=1;
  1563. }
  1564. else{
  1565. _ct=(/*RF2*/(((T50*)a2))->_current_type/*0*/);
  1566. _t1=r259to_runnable(C,_ct);
  1567. _t2=X52to_runnable(a1,_ct);
  1568. /*[IF*/
  1569. if((X52run_time_mark(_t1))==((void*)(X52run_time_mark(_t2)))){
  1570. R=1;
  1571. }
  1572. else{
  1573. R=X52is_a(_t1,_t2);
  1574. }
  1575. /*FI]*/
  1576. }
  1577. /*FI]*/
  1578. return R;
  1579. }
  1580.  
  1581.  
  1582. void r259standard_c_typedef(T259* C){
  1583. T2 _mem_id=0;
  1584. _mem_id=10;
  1585. /*[IRF3.3clear*/((((T7*)((T7*)(((T0*)ms52_783104)))))->_count)=(0);
  1586. /*]*/
  1587. /*[IF*/
  1588. if(r259need_c_struct(C)){
  1589. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms14_6448));
  1590. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms14_5495));
  1591. r7extend((T7*)(((T0*)ms52_783104)),((T3)'S'));
  1592. r2append_in(_mem_id,((T0*)ms52_783104));
  1593. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\40'));
  1594. r7extend((T7*)(((T0*)ms52_783104)),((T3)'T'));
  1595. r2append_in(_mem_id,((T0*)ms52_783104));
  1596. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms14_138));
  1597. }
  1598. /*AF*/ else {/*AT*/r7append((T7*)(((T0*)ms52_783104)),((T0*)ms14_6448));
  1599. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms14_1736a));
  1600. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\52'));
  1601. r7extend((T7*)(((T0*)ms52_783104)),((T3)'T'));
  1602. r2append_in(_mem_id,((T0*)ms52_783104));
  1603. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms14_138));
  1604. }
  1605. /*FI]*/
  1606. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms52_783104));
  1607. /*]*/
  1608. }
  1609.  
  1610.  
  1611. T6 r259is_native_array(T259* C){
  1612. T6 R=0;
  1613. T0* _tna=NULL;
  1614. _tna=NULL;
  1615. R=(_tna)!=((void*)(NULL));
  1616. return R;
  1617. }
  1618.  
  1619.  
  1620. T6 r259is_a(T259* C,T0* a1){
  1621. T6 R=0;
  1622. /*[IF*/
  1623. if(X52is_any(a1)){
  1624. R=1;
  1625. }
  1626.  else if(X52is_none(a1)){
  1627. }
  1628. else{
  1629. R=r51is_subclass_of((T51*)(r259base_class(C)),X52base_class(a1));
  1630. }
  1631. /*FI]*/
  1632. /*[IF*/
  1633. if(!(R)){
  1634. r66add_type((T0*)C,((T0*)ms14_17460));
  1635. r66add_type(a1,((T0*)ms14_46));
  1636. }
  1637. /*FI]*/
  1638. return R;
  1639. }
  1640.  
  1641.  
  1642. void r259make(T259* C,T68 a1){
  1643. {T61*n=((T61*)malloc(sizeof(*n))/*12*/);
  1644. *n=M61;
  1645. r61make(n,((T0*)ms15_696),a1);
  1646. (/*SFN*/C->_base_class_name)=((T0*)n);
  1647. }
  1648. }
  1649.  
  1650.  
  1651. void r259gc_store_left_in(T0* a1){
  1652. r7append(((T7*)a1),((T0*)ms52_17170));
  1653. r2append_in(10,a1);
  1654. }
  1655.  
  1656.  
  1657. T2 r259c_sizeof_pointer(void){
  1658. T2 R=0;
  1659. T8 _p=NULL;
  1660. R=sizeof(T8);
  1661. return R;
  1662. }
  1663.  
  1664.  
  1665. void r259fatal_error_generic_list(T259* C){
  1666. r66add_type((T0*)C,((T0*)ms52_28899));
  1667. r66print_as_fatal_error((T66*)(oBC13eh));
  1668. }
  1669. int fBC259check_type=0;
  1670.  
  1671.  
  1672. void r259check_type(T259* C){
  1673. if(fBC259check_type==0){fBC259check_type=1;{
  1674. T0* _rc=NULL;
  1675. T0* _bc=NULL;
  1676. _bc=r259base_class(C);
  1677. /*[IF*/
  1678. if((/*(IRF4.9nb_errors*/(/*RF2*/((T66*)(oBC13eh))->_error_counter/*0*/)/*)*/)==(0)){
  1679. _rc=r259run_class(C);
  1680. }
  1681. /*FI]*/
  1682. /*[IF*/
  1683. if((/*(IRF4.9nb_errors*/(/*RF2*/((T66*)(oBC13eh))->_error_counter/*0*/)/*)*/)==(0)){
  1684. /*[IF*/
  1685. if((/*RF2*/(((T51*)_bc))->_is_expanded/*17*/)){
  1686. r259error(/*(IRF4.6start_position*/(/*RF2*/(((T61*)((/*RF2*/(C)->_base_class_name/*4*/))))->_start_position/*0*/)/*)*/,((T0*)ms259_38075));
  1687. }
  1688. /*FI]*/
  1689. }
  1690. /*FI]*/
  1691. }}}
  1692.  
  1693.  
  1694. void r259standard_gc_define2(T259* C){
  1695. T6 _gc_check_id=0;
  1696. T2 _rcid=0;
  1697. T0* _rc=NULL;
  1698. _rc=r259run_class(C);
  1699. _rcid=(/*RF2*/(((T50*)_rc))->_id/*4*/);
  1700. r7copy((T7*)(((T0*)ms52_783104a)),((T0*)ms14_1736a));
  1701. r7extend((T7*)(((T0*)ms52_783104a)),((T3)'\40'));
  1702. r7append((T7*)(((T0*)ms52_783104a)),((T0*)ms14_11416));
  1703. r2append_in(_rcid,((T0*)ms52_783104a));
  1704. r7append((T7*)(((T0*)ms52_783104a)),((T0*)ms52_6360));
  1705. r7copy((T7*)(((T0*)ms52_3073536)),((T0*)ms52_404));
  1706. r2append_in(_rcid,((T0*)ms52_3073536));
  1707. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_69075));
  1708. r2append_in(_rcid,((T0*)ms52_3073536));
  1709. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_361836));
  1710. r259gc_store_in(((T0*)ms52_3073536));
  1711. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_94205));
  1712. r344memory_dispose(((T0*)ms52_3073536),((T0*)ms52_320),r259run_class(C));
  1713. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_21552));
  1714. r259gc_free_in(((T0*)ms52_3073536));
  1715. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms14_138));
  1716. r259gc_free_in(((T0*)ms52_3073536));
  1717. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_407960));
  1718. r344memory_dispose(((T0*)ms52_3073536),((T0*)ms52_322),r259run_class(C));
  1719. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_1591218));
  1720. r259gc_free_in(((T0*)ms52_3073536));
  1721. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms14_138));
  1722. r259gc_free_in(((T0*)ms52_3073536));
  1723. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_14102));
  1724. r325put_c_function((T325*)(oBC13cpp),((T0*)ms52_783104a),((T0*)ms52_3073536));
  1725. r7copy((T7*)(((T0*)ms52_783104a)),((T0*)ms14_1736a));
  1726. r7extend((T7*)(((T0*)ms52_783104a)),((T3)'\40'));
  1727. r259gc_mark_in(((T0*)ms52_783104a));
  1728. r7append((T7*)(((T0*)ms52_783104a)),((T0*)ms52_248a));
  1729. r2append_in(_rcid,((T0*)ms52_783104a));
  1730. r7append((T7*)(((T0*)ms52_783104a)),((T0*)ms52_582));
  1731. /*[IRF3.3clear*/((((T7*)((T7*)(((T0*)ms52_3073536)))))->_count)=(0);
  1732. /*]*/
  1733. _gc_check_id=(r50is_tagged(((T50*)_rc)))&&(r47no_check((T47*)(oBC13run_control)));
  1734. /*[IF*/
  1735. if(_gc_check_id){
  1736. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_21437));
  1737. r2append_in(_rcid,((T0*)ms52_3073536));
  1738. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_932));
  1739. }
  1740. /*FI]*/
  1741. r50gc_mark_fixed_size(((T50*)_rc),0,((T0*)ms52_3073536));
  1742. /*[IF*/
  1743. if(_gc_check_id){
  1744. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_270));
  1745. }
  1746. /*FI]*/
  1747. r325put_c_function((T325*)(oBC13cpp),((T0*)ms52_783104a),((T0*)ms52_3073536));
  1748. r7copy((T7*)(((T0*)ms52_783104a)),((T0*)ms14_1736a));
  1749. r7extend((T7*)(((T0*)ms52_783104a)),((T3)'\40'));
  1750. r259gc_align_mark_in(((T0*)ms52_783104a));
  1751. r7append((T7*)(((T0*)ms52_783104a)),((T0*)ms52_14570));
  1752. r2append_in(_rcid,((T0*)ms52_783104a));
  1753. r7append((T7*)(((T0*)ms52_783104a)),((T0*)ms52_585));
  1754. /*[IRF3.3clear*/((((T7*)((T7*)(((T0*)ms52_3073536)))))->_count)=(0);
  1755. /*]*/
  1756. r50gc_align_mark_fixed_size(((T50*)_rc),((T0*)ms52_3073536));
  1757. r325put_c_function((T325*)(oBC13cpp),((T0*)ms52_783104a),((T0*)ms52_3073536));
  1758. r7copy((T7*)(((T0*)ms52_783104a)),((T0*)ms52_5346));
  1759. r2append_in(_rcid,((T0*)ms52_783104a));
  1760. r7copy((T7*)(((T0*)ms52_3073536)),((T0*)ms52_454797));
  1761. r2append_in(_rcid,((T0*)ms52_3073536));
  1762. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_78075));
  1763. r2append_in(_rcid,((T0*)ms52_3073536));
  1764. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_356700));
  1765. r2append_in(_rcid,((T0*)ms52_3073536));
  1766. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_5802));
  1767. r325put_extern5((T325*)(oBC13cpp),((T0*)ms52_783104a),((T0*)ms52_3073536));
  1768. /*[IRF3.3clear*/((((T7*)((T7*)(((T0*)ms52_783104a)))))->_count)=(0);
  1769. /*]*/
  1770. r7extend((T7*)(((T0*)ms52_783104a)),((T3)'T'));
  1771. r2append_in(_rcid,((T0*)ms52_783104a));
  1772. r7extend((T7*)(((T0*)ms52_783104a)),((T3)'\52'));
  1773. r7append((T7*)(((T0*)ms52_783104a)),((T0*)ms14_990));
  1774. r2append_in(_rcid,((T0*)ms52_783104a));
  1775. r7append((T7*)(((T0*)ms52_783104a)),((T0*)ms14_4320));
  1776. r7copy((T7*)(((T0*)ms52_3073536)),((T0*)ms14_404));
  1777. r2append_in(_rcid,((T0*)ms52_3073536));
  1778. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_884));
  1779. /*[IF*/
  1780. if((/*RF2*/((T344*)(oBC13gc_handler))->_info_flag/*1*/)){
  1781. r259gc_info_nb_in(((T0*)ms52_3073536));
  1782. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_620));
  1783. }
  1784. /*FI]*/
  1785. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_741));
  1786. r259gc_store_left_in(((T0*)ms52_3073536));
  1787. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_1425));
  1788. r259gc_store_left_in(((T0*)ms52_3073536));
  1789. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_3810));
  1790. r259gc_store_in(((T0*)ms52_3073536));
  1791. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_13200));
  1792. r259gc_free_in(((T0*)ms52_3073536));
  1793. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_11044));
  1794. r259gc_free_in(((T0*)ms52_3073536));
  1795. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms14_138));
  1796. r259gc_free_in(((T0*)ms52_3073536));
  1797. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_39474));
  1798. r259gc_store_left_in(((T0*)ms52_3073536));
  1799. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_2370));
  1800. r259gc_store_left_in(((T0*)ms52_3073536));
  1801. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_712));
  1802. r259gc_store_chunk_in(((T0*)ms52_3073536));
  1803. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_103626));
  1804. r259gc_store_in(((T0*)ms52_3073536));
  1805. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_11760));
  1806. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_11024));
  1807. r259gc_store_chunk_in(((T0*)ms52_3073536));
  1808. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_23640));
  1809. r259gc_initialize_chunk(_rcid,((T0*)ms52_3073536));
  1810. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_31806));
  1811. r259gc_store_chunk_in(((T0*)ms52_3073536));
  1812. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_1694883));
  1813. r259gc_store_chunk_in(((T0*)ms52_3073536));
  1814. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_51520));
  1815. r259gc_store_chunk_in(((T0*)ms52_3073536));
  1816. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_816));
  1817. r259gc_initialize_chunk(_rcid,((T0*)ms52_3073536));
  1818. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_59265));
  1819. r259gc_free_in(((T0*)ms52_3073536));
  1820. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_1725));
  1821. r259gc_free_in(((T0*)ms52_3073536));
  1822. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms14_138));
  1823. r259gc_free_in(((T0*)ms52_3073536));
  1824. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_15800));
  1825. r259gc_store_chunk_in(((T0*)ms52_3073536));
  1826. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_8008));
  1827. r259gc_initialize_chunk(_rcid,((T0*)ms52_3073536));
  1828. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_21504));
  1829. /*[IF*/
  1830. if(r259need_c_struct(C)){
  1831. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_14003));
  1832. r2append_in(_rcid,((T0*)ms52_3073536));
  1833. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms14_138));
  1834. }
  1835. /*FI]*/
  1836. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_11862));
  1837. r2append_in(_rcid,((T0*)ms52_3073536));
  1838. r7append((T7*)(((T0*)ms52_3073536)),((T0*)ms52_2118));
  1839. r325put_c_function((T325*)(oBC13cpp),((T0*)ms52_783104a),((T0*)ms52_3073536));
  1840. }
  1841.  
  1842.  
  1843. void r259c_header_pass4(T259* C){
  1844. /*[IF*/
  1845. if(r259need_c_struct(C)){
  1846. r259standard_c_struct(C);
  1847. }
  1848. /*FI]*/
  1849. r259standard_c_object_model(C);
  1850. r259standard_c_print_function(C);
  1851. }
  1852.  
  1853.  
  1854. T0* r259to_runnable(T259* C,T0* a1){
  1855. T0* R=NULL;
  1856. R=((T0*)(C));
  1857. r259check_type(C);
  1858. return R;
  1859. }
  1860.  
  1861.  
  1862. void r259standard_gc_define1(T259* C){
  1863. T2 _rcid=0;
  1864. T0* _rc=NULL;
  1865. _rc=r259run_class(C);
  1866. _rcid=(/*RF2*/(((T50*)_rc))->_id/*4*/);
  1867. r7copy((T7*)(((T0*)ms52_783104a)),((T0*)ms14_6448));
  1868. r7append((T7*)(((T0*)ms52_783104a)),((T0*)ms14_5495));
  1869. r7extend((T7*)(((T0*)ms52_783104a)),((T3)'B'));
  1870. r2append_in(_rcid,((T0*)ms52_783104a));
  1871. r7extend((T7*)(((T0*)ms52_783104a)),((T3)'\40'));
  1872. r7append((T7*)(((T0*)ms52_783104a)),((T0*)ms14_404));
  1873. r2append_in(_rcid,((T0*)ms52_783104a));
  1874. r7append((T7*)(((T0*)ms52_783104a)),((T0*)ms14_138));
  1875. r7append((T7*)(((T0*)ms52_783104a)),((T0*)ms14_5495));
  1876. r7extend((T7*)(((T0*)ms52_783104a)),((T3)'B'));
  1877. r2append_in(_rcid,((T0*)ms52_783104a));
  1878. r7append((T7*)(((T0*)ms52_783104a)),((T0*)ms52_414));
  1879. r2append_in(_rcid,((T0*)ms52_783104a));
  1880. r7append((T7*)(((T0*)ms52_783104a)),((T0*)ms52_78572));
  1881. r2append_in(_rcid,((T0*)ms52_783104a));
  1882. r7append((T7*)(((T0*)ms52_783104a)),((T0*)ms52_12042));
  1883. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms52_783104a));
  1884. /*]*/
  1885. r7copy((T7*)(((T0*)ms52_783104a)),((T0*)ms14_404));
  1886. r2append_in(_rcid,((T0*)ms52_783104a));
  1887. r7extend((T7*)(((T0*)ms52_783104a)),((T3)'\52'));
  1888. r259gc_store_in(((T0*)ms52_783104a));
  1889. r325put_extern5((T325*)(oBC13cpp),((T0*)ms52_783104a),((T0*)ms14_1260));
  1890. r7copy((T7*)(((T0*)ms52_783104a)),((T0*)ms14_993));
  1891. r7extend((T7*)(((T0*)ms52_783104a)),((T3)'\40'));
  1892. r259gc_store_left_in(((T0*)ms52_783104a));
  1893. r325put_extern2((T325*)(oBC13cpp),((T0*)ms52_783104a),((T3)'0'));
  1894. r7copy((T7*)(((T0*)ms52_783104a)),((T0*)ms52_2345));
  1895. r259gc_store_chunk_in(((T0*)ms52_783104a));
  1896. r325put_extern5((T325*)(oBC13cpp),((T0*)ms52_783104a),((T0*)ms14_1260));
  1897. r7copy((T7*)(((T0*)ms52_783104a)),((T0*)ms14_404));
  1898. r2append_in(_rcid,((T0*)ms52_783104a));
  1899. r7extend((T7*)(((T0*)ms52_783104a)),((T3)'\52'));
  1900. r259gc_free_in(((T0*)ms52_783104a));
  1901. r325put_extern5((T325*)(oBC13cpp),((T0*)ms52_783104a),((T0*)ms14_1260));
  1902. /*[IF*/
  1903. if((/*RF2*/((T344*)(oBC13gc_handler))->_info_flag/*1*/)){
  1904. r7copy((T7*)(((T0*)ms52_783104a)),((T0*)ms14_993));
  1905. r7extend((T7*)(((T0*)ms52_783104a)),((T3)'\40'));
  1906. r259gc_info_nb_in(((T0*)ms52_783104a));
  1907. r325put_extern2((T325*)(oBC13cpp),((T0*)ms52_783104a),((T3)'0'));
  1908. }
  1909. /*FI]*/
  1910. }
  1911.  
  1912.  
  1913. void r259standard_just_before_gc_mark_in(T0* a1){
  1914. r259gc_free_in(a1);
  1915. r7extend(((T7*)a1),((T3)'\75'));
  1916. r7append(((T7*)a1),((T0*)ms14_1260));
  1917. r7append(((T7*)a1),((T0*)ms14_138));
  1918. }
  1919.  
  1920.  
  1921. void r259id_extra_information(T0* a1){
  1922. r48put_string(((T48*)a1),((T0*)ms52_9724));
  1923. /*[IF*/
  1924. {/*AT*/r48put_string(((T48*)a1),((T0*)ms52_1476));
  1925. }
  1926. /*FI]*/
  1927. }
  1928.  
  1929.  
  1930. void r259gc_mark_in(T0* a1){
  1931. r7append(((T7*)a1),((T0*)ms14_8764));
  1932. r2append_in(10,a1);
  1933. }
  1934.  
  1935.  
  1936. void r259gc_info_nb_in(T0* a1){
  1937. r7append(((T7*)a1),((T0*)ms52_14920));
  1938. r2append_in(10,a1);
  1939. }
  1940.  
  1941.  
  1942. void r259c_type_for_external_in(T0* a1){
  1943. /*[IF*/
  1944. {/*AT*/r7append(((T7*)a1),((T0*)ms14_1736a));
  1945. r7extend(((T7*)a1),((T3)'\52'));
  1946. }
  1947. /*FI]*/
  1948. }
  1949.  
  1950.  
  1951. T0* r259run_time_mark(void){
  1952. T0* R=NULL;
  1953. R=((T0*)ms15_696);
  1954. return R;
  1955. }
  1956.  
  1957.  
  1958. void r259gc_store_in(T0* a1){
  1959. r7append(((T7*)a1),((T0*)ms52_2785));
  1960. r2append_in(10,a1);
  1961. }
  1962.  
  1963.  
  1964. T0* r259run_class(T259* C){
  1965. T0* R=NULL;
  1966. R=r49run_class((T0*)C);
  1967. return R;
  1968. }
  1969.  
  1970.  
  1971. void r259c_type_for_target_in(T0* a1){
  1972. r7extend(((T7*)a1),((T3)'T'));
  1973. r2append_in(10,a1);
  1974. r7extend(((T7*)a1),((T3)'\52'));
  1975. }
  1976.  
  1977.  
  1978. void r259demangling_in(T0* a1){
  1979. /*[IF*/
  1980. {/*AT*/r7extend(((T7*)a1),((T3)'R'));
  1981. }
  1982. /*FI]*/
  1983. r7extend(((T7*)a1),((T3)'\40'));
  1984. r7append(((T7*)a1),r259run_time_mark());
  1985. }
  1986.  
  1987.  
  1988. void r259gc_initialize_chunk(T2 a1,T0* a2){
  1989. r7extend(((T7*)a2),((T3)'\52'));
  1990. r259gc_store_chunk_in(a2);
  1991. r7append(((T7*)a2),((T0*)ms14_266a));
  1992. r2append_in(a1,a2);
  1993. r7append(((T7*)a2),((T0*)ms14_138));
  1994. r259gc_store_in(a2);
  1995. r7append(((T7*)a2),((T0*)ms52_1715));
  1996. r2append_in(a1,a2);
  1997. r7append(((T7*)a2),((T0*)ms52_1005));
  1998. r259gc_store_chunk_in(a2);
  1999. r7append(((T7*)a2),((T0*)ms52_11742));
  2000. r259gc_store_left_in(a2);
  2001. r7append(((T7*)a2),((T0*)ms14_266a));
  2002. r2append_in(a1,a2);
  2003. r7append(((T7*)a2),((T0*)ms52_34060));
  2004. r259gc_store_in(a2);
  2005. r7append(((T7*)a2),((T0*)ms52_2040));
  2006. }
  2007.  
  2008.  
  2009. T0* r259written_mark(void){
  2010. T0* R=NULL;
  2011. R=((T0*)ms15_696);
  2012. return R;
  2013. }
  2014.  
  2015.  
  2016. T0* r275generic_list(T275* C){
  2017. T0* R=NULL;
  2018. r275fatal_error_generic_list(C);
  2019. return R;
  2020. }
  2021.  
  2022.  
  2023. void r275standard_c_print_function(T275* C){
  2024. /*[IF*/
  2025. if(r47no_check((T47*)(oBC13run_control))){
  2026. r50c_print_function((T50*)(r275run_class(C)));
  2027. }
  2028. /*FI]*/
  2029. }
  2030.  
  2031.  
  2032. T2 r275id(T275* C){
  2033. T2 R=0;
  2034. R=(/*RF2*/((T50*)(r275run_class(C)))->_id/*4*/);
  2035. return R;
  2036. }
  2037.  
  2038.  
  2039. void r275c_header_pass1(T275* C){
  2040. T2 _i=0;
  2041. T2 _mem_id=0;
  2042. _mem_id=r275id(C);
  2043. {int z1=r275mapping_code(C);
  2044.  
  2045. if(((4<=z1)&&(z1<=5))){
  2046. r7copy((T7*)(((T0*)ms52_783104)),((T0*)ms14_6448));
  2047. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms14_10800));
  2048. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\40'));
  2049. /*[IF*/
  2050. if((r275mapping_code(C))==(4)){
  2051. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms14_1656));
  2052. }
  2053. else{
  2054. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms14_993));
  2055. }
  2056. /*FI]*/
  2057. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\40'));
  2058. r7extend((T7*)(((T0*)ms52_783104)),((T3)'T'));
  2059. r2append_in(_mem_id,((T0*)ms52_783104));
  2060. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms14_138));
  2061. }
  2062.  else {r7copy((T7*)(((T0*)ms52_783104)),((T0*)ms14_5495));
  2063. r7extend((T7*)(((T0*)ms52_783104)),((T3)'S'));
  2064. r2append_in(_mem_id,((T0*)ms52_783104));
  2065. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\173'));
  2066. _i=r275nb_unsigned(C);
  2067. while (!((_i)==(0)))
  2068. {
  2069. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms276_40851));
  2070. r2append_in(_i,((T0*)ms52_783104));
  2071. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\73'));
  2072. _i=(_i)-(1);
  2073. }
  2074. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms276_38152));
  2075. r2append_in(_mem_id,((T0*)ms52_783104));
  2076. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\40'));
  2077. r7extend((T7*)(((T0*)ms52_783104)),((T3)'T'));
  2078. r2append_in(_mem_id,((T0*)ms52_783104));
  2079. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms14_138));
  2080. }}
  2081. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms52_783104));
  2082. /*]*/
  2083. }
  2084.  
  2085.  
  2086. void r275cast_to_ref(T275* C){
  2087. r275cast_to_ref((T275*)(/*(IRF4.4run_type*/((T0*)(C))/*)*/));
  2088. }
  2089.  
  2090.  
  2091. void r275gc_call_new_in(T275* C,T0* a1){
  2092. r7append(((T7*)a1),((T0*)ms14_990));
  2093. r2append_in(r275id(C),a1);
  2094. r7extend(((T7*)a1),((T3)'\50'));
  2095. r7extend(((T7*)a1),((T3)'\51'));
  2096. }
  2097.  
  2098.  
  2099. T0* r275base_class(T275* C){
  2100. T0* R=NULL;
  2101. T0* _bcn=NULL;
  2102. _bcn=r275base_class_name();
  2103. /*[IF*/
  2104. if((_bcn)!=((void*)(NULL))){
  2105. R=r61base_class(((T61*)_bcn));
  2106. }
  2107. else{
  2108. /*[IRF3.6append*/{T0* b1=((T0*)ms52_36693);
  2109. r7append((T7*)(oBC66explanation),b1);
  2110. }/*]*/
  2111. r66add_type((T0*)C,((T0*)ms14_46));
  2112. r66print_as_fatal_error((T66*)(oBC13eh));
  2113. }
  2114. /*FI]*/
  2115. return R;
  2116. }
  2117.  
  2118.  
  2119. T0* r275look_up_for(T275* C,T0* a1,T0* a2){
  2120. T0* R=NULL;
  2121. R=r51look_up_for((T51*)(r275base_class(C)),a1,a2);
  2122. return R;
  2123. }
  2124.  
  2125.  
  2126. T2 r275c_sizeof(T275* C){
  2127. T2 R=0;
  2128. R=(r275nb_unsigned(C))*((EIF_INTEGER_BITS)/(EIF_CHARACTER_BITS));
  2129. return R;
  2130. }
  2131.  
  2132.  
  2133. T6 r275need_c_struct(T275* C){
  2134. T6 R=0;
  2135. R=(r275mapping_code(C))==(6);
  2136. return R;
  2137. }
  2138.  
  2139.  
  2140. void r275mapping_cast(T275* C){
  2141. /*[IRF3.3clear*/((((T7*)((T7*)(((T0*)ms52_15456)))))->_count)=(0);
  2142. /*]*/
  2143. r7extend((T7*)(((T0*)ms52_15456)),((T3)'\50'));
  2144. r275c_type_for_target_in(C,((T0*)ms52_15456));
  2145. r7extend((T7*)(((T0*)ms52_15456)),((T3)'\51'));
  2146. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms52_15456));
  2147. /*]*/
  2148. }
  2149.  
  2150.  
  2151. T0* r275actual_reference(T275* C,T0* a1){
  2152. T0* R=NULL;
  2153. T68 _sp={NULL,0};
  2154. {T68 se_tmp0;
  2155. _sp=(*(se_tmp0=X52start_position(a1),&se_tmp0));
  2156. }
  2157. {T390*n=((T390*)malloc(sizeof(*n))/*20*/);
  2158. *n=M390;
  2159. r390from_type_bit(n,_sp,(T0*)C);
  2160. R=((T0*)n);
  2161. }
  2162. return R;
  2163. }
  2164.  
  2165.  
  2166. T6 r275is_a_in(T275* C,T0* a1,T0* a2){
  2167. T6 R=0;
  2168. T0* _ct=NULL;
  2169. T0* _t2=NULL;
  2170. T0* _t1=NULL;
  2171. /*[IF*/
  2172. if(((/*RF2*/(C)->_written_mark/*12*/))==((void*)(X52written_mark(a1)))){
  2173. R=1;
  2174. }
  2175. else{
  2176. _ct=(/*RF2*/(((T50*)a2))->_current_type/*0*/);
  2177. _t1=r275to_runnable(C,_ct);
  2178. _t2=X52to_runnable(a1,_ct);
  2179. /*[IF*/
  2180. if((X52run_time_mark(_t1))==((void*)(X52run_time_mark(_t2)))){
  2181. R=1;
  2182. }
  2183. else{
  2184. R=X52is_a(_t1,_t2);
  2185. }
  2186. /*FI]*/
  2187. }
  2188. /*FI]*/
  2189. return R;
  2190. }
  2191.  
  2192.  
  2193. T6 r275is_native_array(T275* C){
  2194. T6 R=0;
  2195. T0* _tna=NULL;
  2196. _tna=NULL;
  2197. R=(_tna)!=((void*)(NULL));
  2198. return R;
  2199. }
  2200.  
  2201.  
  2202. T6 r275is_a(T275* C,T0* a1){
  2203. T6 R=0;
  2204. T0* _other_bit=NULL;
  2205. /*[IF*/
  2206. if(X52is_bit(a1)){
  2207. _other_bit=X52run_type(a1);
  2208. if(NULL!=(_other_bit)){
  2209. switch(((T0*)_other_bit)->id){
  2210. case 275:case 277:
  2211. break;
  2212. default:
  2213. _other_bit=NULL;
  2214. }
  2215. }/*[IF*/
  2216. if((/*(IRF4.6nb*/(/*RF2*/(((T165*)((/*RF2*/(C)->_n/*16*/))))->_value/*12*/)/*)*/)<=(X276nb(_other_bit))){
  2217. R=1;
  2218. }
  2219. else{
  2220. r66add_type((T0*)C,((T0*)ms14_17460));
  2221. r66add_type(a1,((T0*)ms276_7630));
  2222. }
  2223. /*FI]*/
  2224. }
  2225.  else if(r51is_subclass_of((T51*)(r275base_class(C)),X52base_class(a1))){
  2226. R=1;
  2227. }
  2228. else{
  2229. r66add_type((T0*)C,((T0*)ms14_17460));
  2230. r66add_type(a1,((T0*)ms14_46));
  2231. }
  2232. /*FI]*/
  2233. return R;
  2234. }
  2235.  
  2236.  
  2237. void r275make(T275* C,T68 a1,T0* a2){
  2238. (/*SFN*/C->_start_position)=a1;
  2239. (/*SFN*/C->_n)=a2;
  2240. r7copy((T7*)(((T0*)ms52_783104)),((T0*)ms15_669));
  2241. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\40'));
  2242. r2append_in(/*(IRF4.6nb*/(/*RF2*/(((T165*)((/*RF2*/(C)->_n/*16*/))))->_value/*12*/)/*)*/,((T0*)ms52_783104));
  2243. (/*SFN*/C->_written_mark)=((/*UT*/(void)((T21*)(r275string_aliaser()))),r21item(((T0*)ms52_783104)));
  2244. }
  2245.  
  2246.  
  2247. T6 r275is_c_unsigned_ptr(T275* C){
  2248. T6 R=0;
  2249. R=(6)==(r275mapping_code(C));
  2250. return R;
  2251. }
  2252.  
  2253.  
  2254. void r275fatal_error_generic_list(T275* C){
  2255. r66add_type((T0*)C,((T0*)ms52_28899));
  2256. r66print_as_fatal_error((T66*)(oBC13eh));
  2257. }
  2258.  
  2259.  
  2260. T0* r275type_any(void){
  2261. if(fBC13type_any==0){fBC13type_any=1;{
  2262. T68 _unknown_position={NULL,0};
  2263. {T259*n=((T259*)malloc(sizeof(*n))/*8*/);
  2264. *n=M259;
  2265. oBC13type_any=((T0*)n);
  2266. r259make(n,_unknown_position);
  2267. }
  2268. }}
  2269. return oBC13type_any;
  2270. }
  2271.  
  2272.  
  2273. void r275c_initialize_in(T275* C,T0* a1){
  2274. T2 _i=0;
  2275. /*[IF*/
  2276. if((r275mapping_code(C))==(6)){
  2277. r7extend(((T7*)a1),((T3)'\173'));
  2278. _i=r275nb_unsigned(C);
  2279. while (!((_i)==(0)))
  2280. {
  2281. r7extend(((T7*)a1),((T3)'0'));
  2282. _i=(_i)-(1);
  2283. /*[IF*/
  2284. if((_i)>(0)){
  2285. r7extend(((T7*)a1),((T3)'\54'));
  2286. }
  2287. /*FI]*/
  2288. }
  2289. r7extend(((T7*)a1),((T3)'\175'));
  2290. }
  2291. else{
  2292. r7extend(((T7*)a1),((T3)'0'));
  2293. }
  2294. /*FI]*/
  2295. }
  2296.  
  2297.  
  2298. T0* r275smallest_ancestor(T275* C,T0* a1){
  2299. T0* R=NULL;
  2300. T0* _other_bit=NULL;
  2301. _other_bit=X52run_type(a1);
  2302. if(NULL!=(_other_bit)){
  2303. switch(((T0*)_other_bit)->id){
  2304. case 275:case 277:
  2305. break;
  2306. default:
  2307. _other_bit=NULL;
  2308. }
  2309. }/*[IF*/
  2310. if((_other_bit)!=((void*)(NULL))){
  2311. /*[IF*/
  2312. if((/*(IRF4.6nb*/(/*RF2*/(((T165*)((/*RF2*/(C)->_n/*16*/))))->_value/*12*/)/*)*/)<(X276nb(_other_bit))){
  2313. R=((T0*)(C));
  2314. }
  2315. else{
  2316. R=_other_bit;
  2317. }
  2318. /*FI]*/
  2319. }
  2320. else{
  2321. R=r275type_any();
  2322. }
  2323. /*FI]*/
  2324. return R;
  2325. }
  2326.  
  2327.  
  2328. T2 r275unsigned_padding(T275* C){
  2329. T2 R=0;
  2330. R=((r275nb_unsigned(C))*(EIF_INTEGER_BITS))-(/*(IRF4.6nb*/(/*RF2*/(((T165*)((/*RF2*/(C)->_n/*16*/))))->_value/*12*/)/*)*/);
  2331. return R;
  2332. }
  2333.  
  2334.  
  2335. T2 r275mapping_code(T275* C){
  2336. T2 R=0;
  2337. /*[IF*/
  2338. if((/*(IRF4.6nb*/(/*RF2*/(((T165*)((/*RF2*/(C)->_n/*16*/))))->_value/*12*/)/*)*/)<=(EIF_CHARACTER_BITS)){
  2339. R=4;
  2340. }
  2341.  else if((/*(IRF4.6nb*/(/*RF2*/(((T165*)((/*RF2*/(C)->_n/*16*/))))->_value/*12*/)/*)*/)<=(EIF_INTEGER_BITS)){
  2342. R=5;
  2343. }
  2344. else{
  2345. R=6;
  2346. }
  2347. /*FI]*/
  2348. return R;
  2349. }
  2350.  
  2351.  
  2352. T0* r275string_aliaser(void){
  2353. if(fBC13string_aliaser==0){fBC13string_aliaser=1;{
  2354. {T21*n=((T21*)malloc(1));
  2355. oBC13string_aliaser=((T0*)n);
  2356. /*[IRF3.2make*//*[IRF3.6add1*/{T0* b1=((T0*)ms15_696);
  2357. r23put((T23*)(oBC21memory),b1,b1);
  2358. }/*]*/
  2359. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1915);
  2360. r23put((T23*)(oBC21memory),b1,b1);
  2361. }/*]*/
  2362. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_669);
  2363. r23put((T23*)(oBC21memory),b1,b1);
  2364. }/*]*/
  2365. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1980);
  2366. r23put((T23*)(oBC21memory),b1,b1);
  2367. }/*]*/
  2368. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_9234);
  2369. r23put((T23*)(oBC21memory),b1,b1);
  2370. }/*]*/
  2371. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_6405);
  2372. r23put((T23*)(oBC21memory),b1,b1);
  2373. }/*]*/
  2374. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_12529);
  2375. r23put((T23*)(oBC21memory),b1,b1);
  2376. }/*]*/
  2377. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_9801);
  2378. r23put((T23*)(oBC21memory),b1,b1);
  2379. }/*]*/
  2380. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_16393);
  2381. r23put((T23*)(oBC21memory),b1,b1);
  2382. }/*]*/
  2383. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_12550);
  2384. r23put((T23*)(oBC21memory),b1,b1);
  2385. }/*]*/
  2386. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_4728);
  2387. r23put((T23*)(oBC21memory),b1,b1);
  2388. }/*]*/
  2389. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_10740);
  2390. r23put((T23*)(oBC21memory),b1,b1);
  2391. }/*]*/
  2392. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_12030);
  2393. r23put((T23*)(oBC21memory),b1,b1);
  2394. }/*]*/
  2395. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_14817);
  2396. r23put((T23*)(oBC21memory),b1,b1);
  2397. }/*]*/
  2398. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_6307);
  2399. r23put((T23*)(oBC21memory),b1,b1);
  2400. }/*]*/
  2401. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_6643);
  2402. r23put((T23*)(oBC21memory),b1,b1);
  2403. }/*]*/
  2404. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_12595);
  2405. r23put((T23*)(oBC21memory),b1,b1);
  2406. }/*]*/
  2407. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_5508);
  2408. r23put((T23*)(oBC21memory),b1,b1);
  2409. }/*]*/
  2410. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_17448);
  2411. r23put((T23*)(oBC21memory),b1,b1);
  2412. }/*]*/
  2413. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1216);
  2414. r23put((T23*)(oBC21memory),b1,b1);
  2415. }/*]*/
  2416. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_7928);
  2417. r23put((T23*)(oBC21memory),b1,b1);
  2418. }/*]*/
  2419. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_6776);
  2420. r23put((T23*)(oBC21memory),b1,b1);
  2421. }/*]*/
  2422. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_12804);
  2423. r23put((T23*)(oBC21memory),b1,b1);
  2424. }/*]*/
  2425. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1168);
  2426. r23put((T23*)(oBC21memory),b1,b1);
  2427. }/*]*/
  2428. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_7576);
  2429. r23put((T23*)(oBC21memory),b1,b1);
  2430. }/*]*/
  2431. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_4956);
  2432. r23put((T23*)(oBC21memory),b1,b1);
  2433. }/*]*/
  2434. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_16692);
  2435. r23put((T23*)(oBC21memory),b1,b1);
  2436. }/*]*/
  2437. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_19124);
  2438. r23put((T23*)(oBC21memory),b1,b1);
  2439. }/*]*/
  2440. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_921);
  2441. r23put((T23*)(oBC21memory),b1,b1);
  2442. }/*]*/
  2443. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_10680);
  2444. r23put((T23*)(oBC21memory),b1,b1);
  2445. }/*]*/
  2446. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_64);
  2447. r23put((T23*)(oBC21memory),b1,b1);
  2448. }/*]*/
  2449. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_368);
  2450. r23put((T23*)(oBC21memory),b1,b1);
  2451. }/*]*/
  2452. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_61);
  2453. r23put((T23*)(oBC21memory),b1,b1);
  2454. }/*]*/
  2455. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_246);
  2456. r23put((T23*)(oBC21memory),b1,b1);
  2457. }/*]*/
  2458. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_62);
  2459. r23put((T23*)(oBC21memory),b1,b1);
  2460. }/*]*/
  2461. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_9408);
  2462. r23put((T23*)(oBC21memory),b1,b1);
  2463. }/*]*/
  2464. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_242);
  2465. r23put((T23*)(oBC21memory),b1,b1);
  2466. }/*]*/
  2467. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_60);
  2468. r23put((T23*)(oBC21memory),b1,b1);
  2469. }/*]*/
  2470. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_45);
  2471. r23put((T23*)(oBC21memory),b1,b1);
  2472. }/*]*/
  2473. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_42);
  2474. r23put((T23*)(oBC21memory),b1,b1);
  2475. }/*]*/
  2476. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_216);
  2477. r23put((T23*)(oBC21memory),b1,b1);
  2478. }/*]*/
  2479. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1011);
  2480. r23put((T23*)(oBC21memory),b1,b1);
  2481. }/*]*/
  2482. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_450);
  2483. r23put((T23*)(oBC21memory),b1,b1);
  2484. }/*]*/
  2485. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_8211);
  2486. r23put((T23*)(oBC21memory),b1,b1);
  2487. }/*]*/
  2488. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_43);
  2489. r23put((T23*)(oBC21memory),b1,b1);
  2490. }/*]*/
  2491. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_94);
  2492. r23put((T23*)(oBC21memory),b1,b1);
  2493. }/*]*/
  2494. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_552);
  2495. r23put((T23*)(oBC21memory),b1,b1);
  2496. }/*]*/
  2497. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_564);
  2498. r23put((T23*)(oBC21memory),b1,b1);
  2499. }/*]*/
  2500. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_47);
  2501. r23put((T23*)(oBC21memory),b1,b1);
  2502. }/*]*/
  2503. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_188);
  2504. r23put((T23*)(oBC21memory),b1,b1);
  2505. }/*]*/
  2506. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_35);
  2507. r23put((T23*)(oBC21memory),b1,b1);
  2508. }/*]*/
  2509. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1035a);
  2510. r23put((T23*)(oBC21memory),b1,b1);
  2511. }/*]*/
  2512. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_11424);
  2513. r23put((T23*)(oBC21memory),b1,b1);
  2514. }/*]*/
  2515. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_2600);
  2516. r23put((T23*)(oBC21memory),b1,b1);
  2517. }/*]*/
  2518. r21add2(((T0*)ms15_22524));
  2519. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_6702);
  2520. r23put((T23*)(oBC21memory),b1,b1);
  2521. }/*]*/
  2522. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_11776);
  2523. r23put((T23*)(oBC21memory),b1,b1);
  2524. }/*]*/
  2525. r21add2(((T0*)ms15_29246));
  2526. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_13419);
  2527. r23put((T23*)(oBC21memory),b1,b1);
  2528. }/*]*/
  2529. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_2765a);
  2530. r23put((T23*)(oBC21memory),b1,b1);
  2531. }/*]*/
  2532. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1644);
  2533. r23put((T23*)(oBC21memory),b1,b1);
  2534. }/*]*/
  2535. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_19294);
  2536. r23put((T23*)(oBC21memory),b1,b1);
  2537. }/*]*/
  2538. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1772);
  2539. r23put((T23*)(oBC21memory),b1,b1);
  2540. }/*]*/
  2541. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_15070);
  2542. r23put((T23*)(oBC21memory),b1,b1);
  2543. }/*]*/
  2544. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_15570);
  2545. r23put((T23*)(oBC21memory),b1,b1);
  2546. }/*]*/
  2547. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_27034);
  2548. r23put((T23*)(oBC21memory),b1,b1);
  2549. }/*]*/
  2550. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_15190);
  2551. r23put((T23*)(oBC21memory),b1,b1);
  2552. }/*]*/
  2553. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_15890);
  2554. r23put((T23*)(oBC21memory),b1,b1);
  2555. }/*]*/
  2556. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_19151);
  2557. r23put((T23*)(oBC21memory),b1,b1);
  2558. }/*]*/
  2559. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_13491);
  2560. r23put((T23*)(oBC21memory),b1,b1);
  2561. }/*]*/
  2562. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_28490);
  2563. r23put((T23*)(oBC21memory),b1,b1);
  2564. }/*]*/
  2565. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_8750);
  2566. r23put((T23*)(oBC21memory),b1,b1);
  2567. }/*]*/
  2568. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_19437);
  2569. r23put((T23*)(oBC21memory),b1,b1);
  2570. }/*]*/
  2571. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_22824a);
  2572. r23put((T23*)(oBC21memory),b1,b1);
  2573. }/*]*/
  2574. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_23829);
  2575. r23put((T23*)(oBC21memory),b1,b1);
  2576. }/*]*/
  2577. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_27272);
  2578. r23put((T23*)(oBC21memory),b1,b1);
  2579. }/*]*/
  2580. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_10528);
  2581. r23put((T23*)(oBC21memory),b1,b1);
  2582. }/*]*/
  2583. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_13707);
  2584. r23put((T23*)(oBC21memory),b1,b1);
  2585. }/*]*/
  2586. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_6846);
  2587. r23put((T23*)(oBC21memory),b1,b1);
  2588. }/*]*/
  2589. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1664);
  2590. r23put((T23*)(oBC21memory),b1,b1);
  2591. }/*]*/
  2592. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_2760);
  2593. r23put((T23*)(oBC21memory),b1,b1);
  2594. }/*]*/
  2595. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_2730a);
  2596. r23put((T23*)(oBC21memory),b1,b1);
  2597. }/*]*/
  2598. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_22248);
  2599. r23put((T23*)(oBC21memory),b1,b1);
  2600. }/*]*/
  2601. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_22788);
  2602. r23put((T23*)(oBC21memory),b1,b1);
  2603. }/*]*/
  2604. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_30660);
  2605. r23put((T23*)(oBC21memory),b1,b1);
  2606. }/*]*/
  2607. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_13995);
  2608. r23put((T23*)(oBC21memory),b1,b1);
  2609. }/*]*/
  2610. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_432);
  2611. r23put((T23*)(oBC21memory),b1,b1);
  2612. }/*]*/
  2613. r21add2(((T0*)ms15_22596));
  2614. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_60104);
  2615. r23put((T23*)(oBC21memory),b1,b1);
  2616. }/*]*/
  2617. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_24960);
  2618. r23put((T23*)(oBC21memory),b1,b1);
  2619. }/*]*/
  2620. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_34432);
  2621. r23put((T23*)(oBC21memory),b1,b1);
  2622. }/*]*/
  2623. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_11144);
  2624. r23put((T23*)(oBC21memory),b1,b1);
  2625. }/*]*/
  2626. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_18964);
  2627. r23put((T23*)(oBC21memory),b1,b1);
  2628. }/*]*/
  2629. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1724);
  2630. r23put((T23*)(oBC21memory),b1,b1);
  2631. }/*]*/
  2632. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1744);
  2633. r23put((T23*)(oBC21memory),b1,b1);
  2634. }/*]*/
  2635. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_2765);
  2636. r23put((T23*)(oBC21memory),b1,b1);
  2637. }/*]*/
  2638. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_6762);
  2639. r23put((T23*)(oBC21memory),b1,b1);
  2640. }/*]*/
  2641. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1656);
  2642. r23put((T23*)(oBC21memory),b1,b1);
  2643. }/*]*/
  2644. r21add2(((T0*)ms15_60016));
  2645. r21add2(((T0*)ms15_26880));
  2646. r21add2(((T0*)ms15_33240));
  2647. r21add2(((T0*)ms15_21624));
  2648. r21add2(((T0*)ms15_60060));
  2649. r21add2(((T0*)ms15_26908));
  2650. r21add2(((T0*)ms15_33270));
  2651. r21add2(((T0*)ms15_21648));
  2652. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_17886);
  2653. r23put((T23*)(oBC21memory),b1,b1);
  2654. }/*]*/
  2655. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_22824);
  2656. r23put((T23*)(oBC21memory),b1,b1);
  2657. }/*]*/
  2658. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_21192);
  2659. r23put((T23*)(oBC21memory),b1,b1);
  2660. }/*]*/
  2661. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_2785);
  2662. r23put((T23*)(oBC21memory),b1,b1);
  2663. }/*]*/
  2664. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_11496);
  2665. r23put((T23*)(oBC21memory),b1,b1);
  2666. }/*]*/
  2667. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_53940);
  2668. r23put((T23*)(oBC21memory),b1,b1);
  2669. }/*]*/
  2670. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1035);
  2671. r23put((T23*)(oBC21memory),b1,b1);
  2672. }/*]*/
  2673. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_2440);
  2674. r23put((T23*)(oBC21memory),b1,b1);
  2675. }/*]*/
  2676. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_2445);
  2677. r23put((T23*)(oBC21memory),b1,b1);
  2678. }/*]*/
  2679. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_32730);
  2680. r23put((T23*)(oBC21memory),b1,b1);
  2681. }/*]*/
  2682. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_12744);
  2683. r23put((T23*)(oBC21memory),b1,b1);
  2684. }/*]*/
  2685. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_13662);
  2686. r23put((T23*)(oBC21memory),b1,b1);
  2687. }/*]*/
  2688. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_8547);
  2689. r23put((T23*)(oBC21memory),b1,b1);
  2690. }/*]*/
  2691. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_8505);
  2692. r23put((T23*)(oBC21memory),b1,b1);
  2693. }/*]*/
  2694. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_9436);
  2695. r23put((T23*)(oBC21memory),b1,b1);
  2696. }/*]*/
  2697. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_14193);
  2698. r23put((T23*)(oBC21memory),b1,b1);
  2699. }/*]*/
  2700. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_12915a);
  2701. r23put((T23*)(oBC21memory),b1,b1);
  2702. }/*]*/
  2703. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_12915);
  2704. r23put((T23*)(oBC21memory),b1,b1);
  2705. }/*]*/
  2706. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_34528);
  2707. r23put((T23*)(oBC21memory),b1,b1);
  2708. }/*]*/
  2709. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_13752);
  2710. r23put((T23*)(oBC21memory),b1,b1);
  2711. }/*]*/
  2712. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_11336);
  2713. r23put((T23*)(oBC21memory),b1,b1);
  2714. }/*]*/
  2715. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_26156);
  2716. r23put((T23*)(oBC21memory),b1,b1);
  2717. }/*]*/
  2718. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_11376);
  2719. r23put((T23*)(oBC21memory),b1,b1);
  2720. }/*]*/
  2721. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_27580);
  2722. r23put((T23*)(oBC21memory),b1,b1);
  2723. }/*]*/
  2724. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_33990);
  2725. r23put((T23*)(oBC21memory),b1,b1);
  2726. }/*]*/
  2727. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_27443);
  2728. r23put((T23*)(oBC21memory),b1,b1);
  2729. }/*]*/
  2730. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_40358);
  2731. r23put((T23*)(oBC21memory),b1,b1);
  2732. }/*]*/
  2733. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_25584);
  2734. r23put((T23*)(oBC21memory),b1,b1);
  2735. }/*]*/
  2736. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_7380);
  2737. r23put((T23*)(oBC21memory),b1,b1);
  2738. }/*]*/
  2739. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_2730);
  2740. r23put((T23*)(oBC21memory),b1,b1);
  2741. }/*]*/
  2742. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_7530);
  2743. r23put((T23*)(oBC21memory),b1,b1);
  2744. }/*]*/
  2745. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_13977);
  2746. r23put((T23*)(oBC21memory),b1,b1);
  2747. }/*]*/
  2748. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_14175);
  2749. r23put((T23*)(oBC21memory),b1,b1);
  2750. }/*]*/
  2751. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_16970);
  2752. r23put((T23*)(oBC21memory),b1,b1);
  2753. }/*]*/
  2754. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_8820);
  2755. r23put((T23*)(oBC21memory),b1,b1);
  2756. }/*]*/
  2757. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_7326);
  2758. r23put((T23*)(oBC21memory),b1,b1);
  2759. }/*]*/
  2760. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_22716);
  2761. r23put((T23*)(oBC21memory),b1,b1);
  2762. }/*]*/
  2763. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_12978);
  2764. r23put((T23*)(oBC21memory),b1,b1);
  2765. }/*]*/
  2766. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_16770);
  2767. r23put((T23*)(oBC21memory),b1,b1);
  2768. }/*]*/
  2769. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_16850);
  2770. r23put((T23*)(oBC21memory),b1,b1);
  2771. }/*]*/
  2772. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_9051);
  2773. r23put((T23*)(oBC21memory),b1,b1);
  2774. }/*]*/
  2775. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_21300);
  2776. r23put((T23*)(oBC21memory),b1,b1);
  2777. }/*]*/
  2778. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_56720);
  2779. r23put((T23*)(oBC21memory),b1,b1);
  2780. }/*]*/
  2781. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1800);
  2782. r23put((T23*)(oBC21memory),b1,b1);
  2783. }/*]*/
  2784. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_2780);
  2785. r23put((T23*)(oBC21memory),b1,b1);
  2786. }/*]*/
  2787. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_27456);
  2788. r23put((T23*)(oBC21memory),b1,b1);
  2789. }/*]*/
  2790. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_15650);
  2791. r23put((T23*)(oBC21memory),b1,b1);
  2792. }/*]*/
  2793. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_9275);
  2794. r23put((T23*)(oBC21memory),b1,b1);
  2795. }/*]*/
  2796. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_58075);
  2797. r23put((T23*)(oBC21memory),b1,b1);
  2798. }/*]*/
  2799. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_22140);
  2800. r23put((T23*)(oBC21memory),b1,b1);
  2801. }/*]*/
  2802. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_13833);
  2803. r23put((T23*)(oBC21memory),b1,b1);
  2804. }/*]*/
  2805. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_7314);
  2806. r23put((T23*)(oBC21memory),b1,b1);
  2807. }/*]*/
  2808. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1608);
  2809. r23put((T23*)(oBC21memory),b1,b1);
  2810. }/*]*/
  2811. /*]*/
  2812. }
  2813. }}
  2814. return oBC13string_aliaser;
  2815. }
  2816.  
  2817.  
  2818. T0* r275to_runnable(T275* C,T0* a1){
  2819. T0* R=NULL;
  2820. R=((T0*)(C));
  2821. r275to_runnable_1_2(C);
  2822. return R;
  2823. }
  2824.  
  2825.  
  2826. T2 r275nb_unsigned(T275* C){
  2827. T2 R=0;
  2828. T2 _ib=0;
  2829. _ib=EIF_INTEGER_BITS;
  2830. R=(/*(IRF4.6nb*/(/*RF2*/(((T165*)((/*RF2*/(C)->_n/*16*/))))->_value/*12*/)/*)*/)/(_ib);
  2831. /*[IF*/
  2832. if(((/*(IRF4.6nb*/(/*RF2*/(((T165*)((/*RF2*/(C)->_n/*16*/))))->_value/*12*/)/*)*/)%(_ib))>(0)){
  2833. R=(R)+(1);
  2834. }
  2835. /*FI]*/
  2836. return R;
  2837. }
  2838.  
  2839.  
  2840. void r275id_extra_information(T0* a1){
  2841. r48put_string(((T48*)a1),((T0*)ms52_9724));
  2842. /*[IF*/
  2843. /*AF*//*AE*/
  2844. r48put_string(((T48*)a1),((T0*)ms52_759));
  2845. /*FI]*/
  2846. }
  2847.  
  2848.  
  2849. void r275gc_mark_in(T275* C,T0* a1){
  2850. r7append(((T7*)a1),((T0*)ms14_8764));
  2851. r2append_in(r275id(C),a1);
  2852. }
  2853.  
  2854.  
  2855. void r275c_type_for_external_in(T275* C,T0* a1){
  2856. /*[IF*/
  2857. /*AF*//*AE*/
  2858. /*[IRF3.6c_type_for_result_in*/{T275* C1=C;
  2859. T0* b1=a1;
  2860. r275c_type_for_argument_in(C1,b1);
  2861. }/*]*/
  2862. /*FI]*/
  2863. }
  2864.  
  2865.  
  2866. void r275c_type_for_argument_in(T275* C,T0* a1){
  2867. r7extend(((T7*)a1),((T3)'T'));
  2868. r2append_in(r275id(C),a1);
  2869. }
  2870.  
  2871.  
  2872. T0* r275run_class(T275* C){
  2873. T0* R=NULL;
  2874. R=r49run_class((T0*)C);
  2875. return R;
  2876. }
  2877.  
  2878.  
  2879. void r275c_type_for_target_in(T275* C,T0* a1){
  2880. r275c_type_for_argument_in(C,a1);
  2881. /*[IF*/
  2882. if((r275mapping_code(C))==(6)){
  2883. r7extend(((T7*)a1),((T3)'\52'));
  2884. }
  2885. /*FI]*/
  2886. }
  2887.  
  2888.  
  2889. void r275to_runnable_1_2(T275* C){
  2890. T0* _rf=NULL;
  2891. T0* _rc=NULL;
  2892. _rc=r275run_class(C);
  2893. _rf=r50get_feature_with(((T50*)_rc),((T0*)ms15_2440));
  2894. _rf=r50get_feature_with(((T50*)_rc),((T0*)ms15_2445));
  2895. }
  2896.  
  2897.  
  2898. void r275demangling_in(T275* C,T0* a1){
  2899. /*[IF*/
  2900. /*AF*//*AE*/
  2901. r7extend(((T7*)a1),((T3)'E'));
  2902. /*FI]*/
  2903. r7extend(((T7*)a1),((T3)'\40'));
  2904. r7append(((T7*)a1),/*(IRF4.3run_time_mark*/(/*RF2*/(C)->_written_mark/*12*/)/*)*/);
  2905. }
  2906.  
  2907.  
  2908. void r275c_initialize(T275* C){
  2909. T2 _i=0;
  2910. /*[IF*/
  2911. if((r275mapping_code(C))==(6)){
  2912. /*[IRF3.3clear*/((((T7*)((T7*)(((T0*)ms52_783104)))))->_count)=(0);
  2913. /*]*/
  2914. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\173'));
  2915. _i=r275nb_unsigned(C);
  2916. while (!((_i)==(0)))
  2917. {
  2918. r7extend((T7*)(((T0*)ms52_783104)),((T3)'0'));
  2919. _i=(_i)-(1);
  2920. /*[IF*/
  2921. if((_i)>(0)){
  2922. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\54'));
  2923. }
  2924. /*FI]*/
  2925. }
  2926. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\175'));
  2927. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms52_783104));
  2928. /*]*/
  2929. }
  2930. else{
  2931. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2932. T3 b1=((T3)'0');
  2933. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2934. }/*]*/
  2935. /*]*/
  2936. }
  2937. /*FI]*/
  2938. }
  2939. T0*oBC276base_class_name=NULL;
  2940. int fBC276base_class_name=0;
  2941.  
  2942.  
  2943. T0* r275base_class_name(void){
  2944. if(fBC276base_class_name==0){fBC276base_class_name=1;{
  2945. {T61*n=((T61*)malloc(sizeof(*n))/*12*/);
  2946. *n=M61;
  2947. oBC276base_class_name=((T0*)n);
  2948. /*[IRF3.3unknown_position*/((((T61*)(n)))->_to_string)=(((T0*)ms15_1980));
  2949. /*]*/
  2950. }
  2951. }}
  2952. return oBC276base_class_name;
  2953. }
  2954.  
  2955.  
  2956. void r275c_frame_descriptor(T275* C){
  2957. r7extend((T7*)(oBC13c_frame_descriptor_format),((T3)'\45'));
  2958. /*[IF*/
  2959. /*AF*//*AE*/
  2960. r7extend((T7*)(oBC13c_frame_descriptor_format),((T3)'E'));
  2961. /*FI]*/
  2962. r2append_in(r275id(C),oBC13c_frame_descriptor_format);
  2963. r7extend((T7*)(oBC13c_frame_descriptor_format),((T3)'\45'));
  2964. }
  2965.  
  2966.  
  2967. T6 r275is_c_char(T275* C){
  2968. T6 R=0;
  2969. R=(4)==(r275mapping_code(C));
  2970. return R;
  2971. }
  2972.  
  2973.  
  2974. void r117compile_to_c_old(T117* C){
  2975. X104compile_to_c_old((/*RF2*/(C)->_target/*4*/));
  2976. /*[IF*/
  2977. {/*AT*//*SSPRF3*//*X139compile_to_c_old*/r139compile_to_c_old((T139*)((/*RF2*/(C)->_arguments/*8*/)));
  2978. }
  2979. /*FI]*/
  2980. }
  2981.  
  2982.  
  2983. T0* r117runnable_expression(T0* a1,T0* a2){
  2984. T0* R=NULL;
  2985. R=X104to_runnable(a1,a2);
  2986. /*[IF*/
  2987. if((R)==((void*)(NULL))){
  2988. {T68 se_tmp0;
  2989. r66add_position((*(se_tmp0=X104start_position(a1),&se_tmp0)));
  2990. }
  2991. r117fatal_error(((T0*)ms116_16290));
  2992. }
  2993. /*FI]*/
  2994. return R;
  2995. }
  2996.  
  2997.  
  2998. void r117run_feature_has_result(T117* C){
  2999. /*[IF*/
  3000. if((X334result_type((/*RF2*/(C)->_run_feature/*16*/)))==((void*)(NULL))){
  3001. {T68 se_tmp0;
  3002. r66add_position((*(se_tmp0=X334start_position((/*RF2*/(C)->_run_feature/*16*/)),&se_tmp0)));
  3003. }
  3004. r66add_position((/*RF2*/((T129*)((/*RF2*/(C)->_feature_name/*12*/)))->_start_position/*4*/));
  3005. r117fatal_error(((T0*)ms115_53215));
  3006. }
  3007. /*FI]*/
  3008. }
  3009.  
  3010.  
  3011. void r117run_feature_match(T117* C,T0* a1){
  3012. r117run_feature_has_result(C);
  3013. X139match_with((/*RF2*/(C)->_arguments/*8*/),(/*RF2*/(C)->_run_feature/*16*/),a1);
  3014. }
  3015.  
  3016.  
  3017. T0* r117add_comment(T117* C,T0* a1){
  3018. T0* R=NULL;
  3019. /*[IF*/
  3020. if(((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r44count(((T44*)((/*RF2*/(((T81*)a1))->_list/*8*/))))/*)*/)==(0))){
  3021. R=((T0*)(C));
  3022. }
  3023. else{
  3024. {T229*n=((T229*)malloc(sizeof(*n))/*12*/);
  3025. *n=M229;
  3026. r229make(n,(T0*)C,a1);
  3027. R=((T0*)n);
  3028. }
  3029. }
  3030. /*FI]*/
  3031. return R;
  3032. }
  3033.  
  3034.  
  3035. void r117with(T117* C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5){
  3036. (/*SFN*/C->_target)=a1;
  3037. (/*SFN*/C->_feature_name)=a2;
  3038. (/*SFN*/C->_arguments)=a3;
  3039. (/*SFN*/C->_run_feature)=a4;
  3040. r117run_feature_match(C,a5);
  3041. }
  3042.  
  3043.  
  3044. void r117mapping_c_target(T117* C,T0* a1){
  3045. T0* _actual_type=NULL;
  3046. T6 _flag=0;
  3047. _flag=r325call_invariant_start(a1);
  3048. _actual_type=X52run_type(r117result_type(C));
  3049. /*[IF*/
  3050. if(X52is_reference(_actual_type)){
  3051. /*[IF*/
  3052. if(X52is_reference(a1)){
  3053. X52mapping_cast(a1);
  3054. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  3055. T3 b1=((T3)'\50');
  3056. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  3057. }/*]*/
  3058. /*]*/
  3059. /*[IRF3.4compile_to_c*//*[IRF3.6call_proc_call_c2c*/{T117* C1=C;
  3060. r325put_cpc((T325*)(oBC13cpp),(T0*)C1);
  3061. }/*]*/
  3062. /*]*/
  3063. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  3064. T3 b1=((T3)'\51');
  3065. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  3066. }/*]*/
  3067. /*]*/
  3068. }
  3069. else{
  3070. /*[IRF3.4compile_to_c*//*[IRF3.6call_proc_call_c2c*/{T117* C1=C;
  3071. r325put_cpc((T325*)(oBC13cpp),(T0*)C1);
  3072. }/*]*/
  3073. /*]*/
  3074. }
  3075. /*FI]*/
  3076. }
  3077. else{
  3078. /*[IF*/
  3079. if(X52is_reference(a1)){
  3080. /*[IRF3.4compile_to_c*//*[IRF3.6call_proc_call_c2c*/{T117* C1=C;
  3081. r325put_cpc((T325*)(oBC13cpp),(T0*)C1);
  3082. }/*]*/
  3083. /*]*/
  3084. }
  3085. else{
  3086. /*[IF*/
  3087. if(X52need_c_struct(a1)){
  3088. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  3089. T3 b1=((T3)'\46');
  3090. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  3091. }/*]*/
  3092. /*]*/
  3093. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  3094. T3 b1=((T3)'\50');
  3095. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  3096. }/*]*/
  3097. /*]*/
  3098. /*[IRF3.4compile_to_c*//*[IRF3.6call_proc_call_c2c*/{T117* C1=C;
  3099. r325put_cpc((T325*)(oBC13cpp),(T0*)C1);
  3100. }/*]*/
  3101. /*]*/
  3102. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  3103. T3 b1=((T3)'\51');
  3104. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  3105. }/*]*/
  3106. /*]*/
  3107. }
  3108. else{
  3109. /*[IRF3.4compile_to_c*//*[IRF3.6call_proc_call_c2c*/{T117* C1=C;
  3110. r325put_cpc((T325*)(oBC13cpp),(T0*)C1);
  3111. }/*]*/
  3112. /*]*/
  3113. }
  3114. /*FI]*/
  3115. }
  3116. /*FI]*/
  3117. }
  3118. /*FI]*/
  3119. /*[IF*/
  3120. if(_flag){
  3121. /*[IRF3.2call_invariant_end*//*[IRF3.6put_character*/{T48* C1=(T48*)(oBC325out_c);
  3122. T3 b1=((T3)'\51');
  3123. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  3124. }/*]*/
  3125. /*]*/
  3126. }
  3127. /*FI]*/
  3128. }
  3129.  
  3130.  
  3131. void r117afd_check(T117* C){
  3132. T0* _running=NULL;
  3133. T0* _rc=NULL;
  3134. /*[IF*/
  3135. if(((/*RF2*/(C)->_run_feature/*16*/))!=((void*)(NULL))){
  3136. _rc=X52run_class(X104result_type((/*RF2*/(C)->_target/*4*/)));
  3137. _running=(/*RF2*/(((T50*)_rc))->_running/*9*/);
  3138. /*[IF*/
  3139. if((_running)==((void*)(NULL))){
  3140. }
  3141.  else if((r53count(((T53*)_running)))>(1)){
  3142. r351update((/*RF2*/(C)->_target/*4*/),(/*RF2*/(C)->_run_feature/*16*/));
  3143. }
  3144. /*FI]*/
  3145. }
  3146. /*FI]*/
  3147. X104afd_check((/*RF2*/(C)->_target/*4*/));
  3148. /*[IF*/
  3149. {/*AT*//*SSPRF3*//*X139afd_check*/r139afd_check((T139*)((/*RF2*/(C)->_arguments/*8*/)));
  3150. }
  3151. /*FI]*/
  3152. }
  3153.  
  3154.  
  3155. void r117c_declare_for_old(T117* C){
  3156. X104c_declare_for_old((/*RF2*/(C)->_target/*4*/));
  3157. /*[IF*/
  3158. {/*AT*//*SSPRF3*//*X139c_declare_for_old*/r139c_declare_for_old((T139*)((/*RF2*/(C)->_arguments/*8*/)));
  3159. }
  3160. /*FI]*/
  3161. }
  3162.  
  3163.  
  3164. void r117collect_c_tmp(T117* C){
  3165. /*[IF*/
  3166. if(((/*RF2*/(C)->_run_feature/*16*/))!=((void*)(NULL))){
  3167. X334collect_c_tmp((/*RF2*/(C)->_run_feature/*16*/));
  3168. }
  3169. /*FI]*/
  3170. X104collect_c_tmp((/*RF2*/(C)->_target/*4*/));
  3171. /*[IF*/
  3172. if(((/*RF2*/(C)->_arguments/*8*/))!=((void*)(NULL))){
  3173. /*SSPRF3*//*X139collect_c_tmp*/r139collect_c_tmp((T139*)((/*RF2*/(C)->_arguments/*8*/)));
  3174. }
  3175. /*FI]*/
  3176. }
  3177.  
  3178.  
  3179. T0* r117operator(void){
  3180. T0* R=NULL;
  3181. R=((T0*)ms15_1035a);
  3182. return R;
  3183. }
  3184.  
  3185.  
  3186. T6 r117use_current(T117* C){
  3187. T6 R=0;
  3188. /*[IF*/
  3189. {/*AT*/R=/*SSFRF4*//*X139use_current*/r139use_current((T139*)((/*RF2*/(C)->_arguments/*8*/)));
  3190. }
  3191. /*FI]*/
  3192. /*[IF*/
  3193. if(R){
  3194. }
  3195.  else if(X104is_current((/*RF2*/(C)->_target/*4*/))){
  3196. R=X334use_current((/*RF2*/(C)->_run_feature/*16*/));
  3197. }
  3198. else{
  3199. R=X104use_current((/*RF2*/(C)->_target/*4*/));
  3200. }
  3201. /*FI]*/
  3202. return R;
  3203. }
  3204.  
  3205.  
  3206. T0* r117runnable_args(T0* a1,T0* a2){
  3207. T0* R=NULL;
  3208. R=X139to_runnable(a1,a2);
  3209. /*[IF*/
  3210. if((R)==((void*)(NULL))){
  3211. {T68 se_tmp0;
  3212. r66add_position((*(se_tmp0=X139start_position(a1),&se_tmp0)));
  3213. }
  3214. r117fatal_error(((T0*)ms14_12870));
  3215. }
  3216. /*FI]*/
  3217. return R;
  3218. }
  3219.  
  3220.  
  3221. T0* r117to_runnable(T117* C,T0* a1){
  3222. T0* R=NULL;
  3223. T0* _target_type=NULL;
  3224. T0* _argument_type=NULL;
  3225. T0* _rf=NULL;
  3226. T0* _a=NULL;
  3227. T0* _t=NULL;
  3228. _t=r117runnable_expression((/*RF2*/(C)->_target/*4*/),a1);
  3229. _a=r117runnable_args((/*RF2*/(C)->_arguments/*8*/),a1);
  3230. _target_type=X104result_type(_t);
  3231. _argument_type=X104result_type(r117arg1(C));
  3232. /*[IF*/
  3233. if(X52is_real(_argument_type)){
  3234. /*[IF*/
  3235. if(X52is_integer(_target_type)){
  3236. _t=r341implicit_cast((T341*)(oBC13conversion_handler),_t,_argument_type);
  3237. }
  3238. /*FI]*/
  3239. }
  3240.  else if(X52is_double(_argument_type)){
  3241. /*[IF*/
  3242. if((X52is_integer(_target_type))||(X52is_real(_target_type))){
  3243. _t=r341implicit_cast((T341*)(oBC13conversion_handler),_t,_argument_type);
  3244. }
  3245. /*FI]*/
  3246. }
  3247. /*FI]*/
  3248. _rf=r117run_feature_for(C,_t,a1);
  3249. /*[IF*/
  3250. if(((/*RF2*/(C)->_run_feature/*16*/))==((void*)(NULL))){
  3251. (/*SFN*/C->_target)=_t;
  3252. (/*SFN*/C->_arguments)=_a;
  3253. (/*SFN*/C->_run_feature)=_rf;
  3254. r117run_feature_match(C,a1);
  3255. R=((T0*)(C));
  3256. }
  3257.  else if(((_t)==((void*)((/*RF2*/(C)->_target/*4*/))))&&((_a)==((void*)((/*RF2*/(C)->_arguments/*8*/))))){
  3258. R=((T0*)(C));
  3259. }
  3260. else{
  3261. {T117*n=((T117*)malloc(sizeof(*n))/*24*/);
  3262. *n=M117;
  3263. r117with(n,_t,(/*RF2*/(C)->_feature_name/*12*/),_a,_rf,a1);
  3264. R=((T0*)n);
  3265. }
  3266. }
  3267. /*FI]*/
  3268. return R;
  3269. }
  3270.  
  3271.  
  3272. T2 r117to_integer(T117* C){
  3273. T2 R=0;
  3274. r117error(/*(IRF4.6start_position*/(/*RF2*/(((T129*)((/*RF2*/(C)->_feature_name/*12*/))))->_start_position/*4*/)/*)*/,((T0*)ms14_45441));
  3275. return R;
  3276. }
  3277.  
  3278.  
  3279. T6 r117is_static(T117* C){
  3280. T6 R=0;
  3281. /*[IF*/
  3282. if(X52is_boolean(X104result_type((/*RF2*/(C)->_target/*4*/)))){
  3283. /*[IF*/
  3284. if((X104is_static((/*RF2*/(C)->_target/*4*/)))&&(X104is_static(r117arg1(C)))){
  3285. R=1;
  3286. (/*SFN*/C->_static_value_mem)=(X104static_value((/*RF2*/(C)->_target/*4*/)))+(X104static_value(r117arg1(C)));
  3287. /*[IF*/
  3288. if(((/*RF2*/(C)->_static_value_mem/*20*/))==(1)){
  3289. (/*SFN*/C->_static_value_mem)=1;
  3290. }
  3291. else{
  3292. (/*SFN*/C->_static_value_mem)=0;
  3293. }
  3294. /*FI]*/
  3295. }
  3296. /*FI]*/
  3297. }
  3298. /*FI]*/
  3299. return R;
  3300. }
  3301.  
  3302.  
  3303. void r117finalize(T117* C){
  3304. T0* _rf=NULL;
  3305. T0* _rc=NULL;
  3306. _rf=(/*RF2*/(C)->_run_feature/*16*/);
  3307. _rc=X52run_class(/*SSWARF2*//*X334current_type*/(/*RF2*/(((T368*)_rf))->_current_type/*8*/));
  3308. (/*SFN*/C->_run_feature)=r50dynamic((T50*)(/*(IRF4.6first*/((/*RF2*/((T53*)((/*RF2*/(((T50*)_rc))->_running/*9*/)))->_storage/*0*/))[0]/*)*/),_rf);
  3309. }
  3310.  
  3311.  
  3312. void r117error(T68 a1,T0* a2){
  3313. r66add_position(a1);
  3314. /*[IRF3.6append*/{T0* b1=a2;
  3315. r7append((T7*)(oBC66explanation),b1);
  3316. }/*]*/
  3317. r66print_as_error((T66*)(oBC13eh));
  3318. }
  3319.  
  3320.  
  3321. T0* r117result_type(T117* C){
  3322. T0* R=NULL;
  3323. T0* _tla=NULL;
  3324. R=X334result_type((/*RF2*/(C)->_run_feature/*16*/));
  3325. /*[IF*/
  3326. if(X52is_like_current(R)){
  3327. R=/*SSWARF2*//*X334current_type*/(/*RF2*/((T368*)((/*RF2*/(C)->_run_feature/*16*/)))->_current_type/*8*/);
  3328. }
  3329. else{
  3330. _tla=R;
  3331. if(NULL!=(_tla)){
  3332. switch(((T0*)_tla)->id){
  3333. case 257:
  3334. break;
  3335. default:
  3336. _tla=NULL;
  3337. }
  3338. }/*[IF*/
  3339. if((_tla)!=((void*)(NULL))){
  3340. R=X52run_type(X104result_type(r117arg1(C)));
  3341. }
  3342. /*FI]*/
  3343. }
  3344. /*FI]*/
  3345. return R;
  3346. }
  3347.  
  3348.  
  3349. T0* r117arg1(T117* C){
  3350. T0* R=NULL;
  3351. R=/*SSFRF4*//*X139first*//*(IRF4.3first*/(/*RF2*/((T139*)((/*RF2*/(C)->_arguments/*8*/)))->_first_one/*4*/)/*)*/;
  3352. return R;
  3353. }
  3354.  
  3355.  
  3356. T6 r117call_proc_call_stupid_switch(T117* C,T0* a1){
  3357. T6 R=0;
  3358. /*[IF*/
  3359. if(((/*RF2*/(C)->_arguments/*8*/))==((void*)(NULL))){
  3360. R=1;
  3361. }
  3362. else{
  3363. R=/*SSFRF4*//*X139stupid_switch*/r139stupid_switch((T139*)((/*RF2*/(C)->_arguments/*8*/)),a1);
  3364. }
  3365. /*FI]*/
  3366. /*[IF*/
  3367. if(R){
  3368. /*[IF*/
  3369. if(X104is_current((/*RF2*/(C)->_target/*4*/))){
  3370. /*[IF*/
  3371. if(r49same_base_feature((/*RF2*/(C)->_run_feature/*16*/),a1)){
  3372. R=(X334stupid_switch((/*RF2*/(C)->_run_feature/*16*/),a1))!=((void*)(NULL));
  3373. }
  3374. else{
  3375. R=0;
  3376. }
  3377. /*FI]*/
  3378. }
  3379. else{
  3380. R=X104stupid_switch((/*RF2*/(C)->_target/*4*/),a1);
  3381. }
  3382. /*FI]*/
  3383. }
  3384. /*FI]*/
  3385. return R;
  3386. }
  3387.  
  3388.  
  3389. T0* r117run_feature_for(T117* C,T0* a1,T0* a2){
  3390. T0* R=NULL;
  3391. T0* _bc=NULL;
  3392. T0* _rt=NULL;
  3393. T0* _rc=NULL;
  3394. _rt=X104result_type(a1);
  3395. /*[IF*/
  3396. if((_rt)!=((void*)(NULL))){
  3397. _rc=X52run_class(_rt);
  3398. /*[IF*/
  3399. if((_rc)!=((void*)(NULL))){
  3400. _bc=r50base_class(((T50*)_rc));
  3401. R=r51run_feature_for(((T51*)_bc),_rc,a1,(/*RF2*/(C)->_feature_name/*12*/),a2);
  3402. }
  3403. /*FI]*/
  3404. }
  3405. /*FI]*/
  3406. /*[IF*/
  3407. if((R)==((void*)(NULL))){
  3408. r66add_position((/*RF2*/((T129*)((/*RF2*/(C)->_feature_name/*12*/)))->_start_position/*4*/));
  3409. /*[IRF3.6append*/{T0* b1=((T0*)ms116_39025);
  3410. r7append((T7*)(oBC66explanation),b1);
  3411. }/*]*/
  3412. r66print_as_fatal_error((T66*)(oBC13eh));
  3413. }
  3414. /*FI]*/
  3415. return R;
  3416. }
  3417.  
  3418.  
  3419. T0* r117static_result_base_class(T117* C){
  3420. T0* R=NULL;
  3421. T0* _cn=NULL;
  3422. T0* _rt=NULL;
  3423. T0* _e_feature=NULL;
  3424. T0* _bc=NULL;
  3425. _bc=X104static_result_base_class((/*RF2*/(C)->_target/*4*/));
  3426. /*[IF*/
  3427. if((_bc)!=((void*)(NULL))){
  3428. _e_feature=r51e_feature(((T51*)_bc),(/*RF2*/(C)->_feature_name/*12*/));
  3429. /*[IF*/
  3430. if((_e_feature)!=((void*)(NULL))){
  3431. _rt=X90result_type(_e_feature);
  3432. /*[IF*/
  3433. if((_rt)!=((void*)(NULL))){
  3434. _cn=X52static_base_class_name(_rt);
  3435. /*[IF*/
  3436. if((_cn)!=((void*)(NULL))){
  3437. R=r61base_class(((T61*)_cn));
  3438. }
  3439. /*FI]*/
  3440. }
  3441. /*FI]*/
  3442. }
  3443. /*FI]*/
  3444. }
  3445. /*FI]*/
  3446. return R;
  3447. }
  3448.  
  3449.  
  3450. void r117make(T117* C,T0* a1,T68 a2,T0* a3){
  3451. (/*SFN*/C->_target)=a1;
  3452. {T129*n=((T129*)malloc(sizeof(*n))/*20*/);
  3453. *n=M129;
  3454. r129make(n,r117operator(),a2);
  3455. (/*SFN*/C->_feature_name)=((T0*)n);
  3456. }
  3457. {T139*n=((T139*)malloc(sizeof(*n))/*16*/);
  3458. *n=M139;
  3459. /*[IRF3.3make_1*/((((T139*)(n)))->_first_one)=(a3);
  3460. /*]*/
  3461. (/*SFN*/C->_arguments)=((T0*)n);
  3462. }
  3463. }
  3464.  
  3465.  
  3466. void r117fatal_error(T0* a1){
  3467. /*[IRF3.6append*/{T0* b1=a1;
  3468. r7append((T7*)(oBC66explanation),b1);
  3469. }/*]*/
  3470. r66print_as_fatal_error((T66*)(oBC13eh));
  3471. }
  3472.  
  3473.  
  3474. void r117assertion_check(T117* C,T3 a1){
  3475. /*[IF*/
  3476. if((a1)==(((T3)'R'))){
  3477. X334vape_check_from((/*RF2*/(C)->_run_feature/*16*/),/*(IRF4.6start_position*/(/*RF2*/(((T129*)((/*RF2*/(C)->_feature_name/*12*/))))->_start_position/*4*/)/*)*/);
  3478. }
  3479. /*FI]*/
  3480. X104assertion_check((/*RF2*/(C)->_target/*4*/),a1);
  3481. X104assertion_check(r117arg1(C),a1);
  3482. }
  3483.  
  3484.  
  3485. T6 r117stupid_switch(T117* C,T0* a1){
  3486. T6 R=0;
  3487. R=r117call_proc_call_stupid_switch(C,a1);
  3488. /*[IF*/
  3489. if(R){
  3490. R=!(X52is_native_array(r117result_type(C)));
  3491. }
  3492. /*FI]*/
  3493. return R;
  3494. }
  3495.  
  3496.  
  3497. void r381compile_to_c_old(T381* C){
  3498. T2 _c=0;
  3499. T2 _i=0;
  3500. _i=1;
  3501. _c=r381count(C);
  3502. while (!((_i)>(_c)))
  3503. {
  3504. X104compile_to_c_old(r381expression(C,_i));
  3505. _i=(_i)+(1);
  3506. }
  3507. }
  3508.  
  3509.  
  3510. void r381afd_check(T381* C){
  3511. T2 _i=0;
  3512. _i=r381count(C);
  3513. while (!((_i)==(0)))
  3514. {
  3515. X104afd_check(r381expression(C,_i));
  3516. _i=(_i)-(1);
  3517. }
  3518. }
  3519.  
  3520.  
  3521. void r381c_declare_for_old(T381* C){
  3522. T2 _c=0;
  3523. T2 _i=0;
  3524. _i=1;
  3525. _c=r381count(C);
  3526. while (!((_i)>(_c)))
  3527. {
  3528. X104c_declare_for_old(r381expression(C,_i));
  3529. _i=(_i)+(1);
  3530. }
  3531. }
  3532.  
  3533.  
  3534. void r381collect_c_tmp(T381* C){
  3535. T2 _c=0;
  3536. T2 _i=0;
  3537. _i=1;
  3538. _c=r381count(C);
  3539. while (!((_i)>(_c)))
  3540. {
  3541. X104collect_c_tmp(r381expression(C,_i));
  3542. _i=(_i)+(1);
  3543. }
  3544. }
  3545.  
  3546.  
  3547. T6 r381use_current(T381* C){
  3548. T6 R=0;
  3549. T2 _i=0;
  3550. _i=r381count(C);
  3551. while (!((R)||((_i)==(0))))
  3552. {
  3553. R=X104use_current(r381expression(C,_i));
  3554. _i=(_i)-(1);
  3555. }
  3556. return R;
  3557. }
  3558.  
  3559.  
  3560. void r381compile_to_c_ith(T381* C,T0* a1,T2 a2){
  3561. T0* _ft=NULL;
  3562. T0* _e=NULL;
  3563. _e=r381expression(C,a2);
  3564. _ft=X52run_type(r178type(((T178*)a1),a2));
  3565. X104mapping_c_arg(_e,_ft);
  3566. }
  3567.  
  3568.  
  3569. void r381dca_inline_ith(T381* C,T0* a1,T2 a2){
  3570. T0* _ft=NULL;
  3571. T0* _e=NULL;
  3572. _e=r381expression(C,a2);
  3573. _ft=X52run_type(r178type(((T178*)a1),a2));
  3574. X104dca_inline_argument(_e,_ft);
  3575. }
  3576.  
  3577.  
  3578. T0* r381to_runnable(T381* C,T0* a1){
  3579. T0* R=NULL;
  3580. T0* _e2=NULL;
  3581. T0* _e1=NULL;
  3582. T2 _i=0;
  3583. /*[IF*/
  3584. if(((/*RF2*/(C)->_current_type/*12*/))==((void*)(NULL))){
  3585. (/*SFN*/C->_current_type)=a1;
  3586. _i=r381count(C);
  3587. while (!((_i)==(0)))
  3588. {
  3589. _e1=r381expression(C,_i);
  3590. _e2=X104to_runnable(_e1,(/*RF2*/(C)->_current_type/*12*/));
  3591. /*[IF*/
  3592. if((_e2)==((void*)(NULL))){
  3593. {T68 se_tmp0;
  3594. r381error((*(se_tmp0=X104start_position(_e1),&se_tmp0)),((T0*)ms139_16290));
  3595. }
  3596. }
  3597.  else if((_e1)!=((void*)(_e2))){
  3598. r381put(C,_e2,_i);
  3599. }
  3600. /*FI]*/
  3601. _i=(_i)-(1);
  3602. }
  3603. /*[IF*/
  3604. if((/*(IRF4.9nb_errors*/(/*RF2*/((T66*)(oBC13eh))->_error_counter/*0*/)/*)*/)==(0)){
  3605. R=((T0*)(C));
  3606. }
  3607. /*FI]*/
  3608. }
  3609.  else if((X52run_class(a1))==((void*)(r381run_class(C)))){
  3610. R=((T0*)(C));
  3611. }
  3612. else{
  3613. {T381*n=((T381*)malloc(sizeof(*n))/*16*/);
  3614. *n=M381;
  3615. r381from_model(n,(T0*)C);
  3616. R=((T0*)n);
  3617. }
  3618. R=r381to_runnable(((T381*)R),a1);
  3619. }
  3620. /*FI]*/
  3621. return R;
  3622. }
  3623.  
  3624.  
  3625. T6 r381is_static(T381* C){
  3626. T6 R=0;
  3627. T2 _i=0;
  3628. R=1;
  3629. _i=r381count(C);
  3630. while (!((!(R))||((_i)==(0))))
  3631. {
  3632. R=X104is_static(r381expression(C,_i));
  3633. _i=(_i)-(1);
  3634. }
  3635. return R;
  3636. }
  3637.  
  3638.  
  3639. void r381put(T381* C,T0* a1,T2 a2){
  3640. /*[IF*/
  3641. if((a2)==(1)){
  3642. (/*SFN*/C->_first_one)=a1;
  3643. }
  3644. else{
  3645. X141put((/*RF2*/(C)->_remainder/*8*/),a1,(a2)-(2));
  3646. }
  3647. /*FI]*/
  3648. }
  3649.  
  3650.  
  3651. T2 r381count(T381* C){
  3652. T2 R=0;
  3653. /*[IF*/
  3654. if(((/*RF2*/(C)->_remainder/*8*/))==((void*)(NULL))){
  3655. R=1;
  3656. }
  3657. else{
  3658. R=(/*SSWARF2*//*X141upper*/(/*RF2*/((T141*)((/*RF2*/(C)->_remainder/*8*/)))->_upper/*12*/))+(2);
  3659. }
  3660. /*FI]*/
  3661. return R;
  3662. }
  3663.  
  3664.  
  3665. void r381error(T68 a1,T0* a2){
  3666. r66add_position(a1);
  3667. /*[IRF3.6append*/{T0* b1=a2;
  3668. r7append((T7*)(oBC66explanation),b1);
  3669. }/*]*/
  3670. r66print_as_error((T66*)(oBC13eh));
  3671. }
  3672.  
  3673.  
  3674. T6 r381isa_dca_inline(T381* C,T0* a1,T0* a2){
  3675. T6 R=0;
  3676. T2 _r=0;
  3677. T2 _i=0;
  3678. T0* _e=NULL;
  3679. T0* _args=NULL;
  3680. T0* _relay_args=NULL;
  3681. _relay_args=X334arguments(a1);
  3682. _args=X334arguments(a2);
  3683. R=1;
  3684. _i=r381count(C);
  3685. r374force((T374*)(oBC139isa_dca_inline_memory),0,_i);
  3686. /*[IRF3.6clear_all*/{T374* C1=(T374*)(oBC139isa_dca_inline_memory);
  3687. T6 __value=0;
  3688. /*[IRF3.6set_all_with*/{T374* C2=C1;
  3689. T6 c1=__value;
  3690. r375set_all_with((/*RF2*/(C2)->_storage/*0*/),c1,((/*RF2*/(C2)->_upper/*8*/))-((/*RF2*/(C2)->_lower/*12*/)));
  3691. }/*]*/
  3692. }/*]*/
  3693. while (!((!(R))||((_i)==(0))))
  3694. {
  3695. _e=r381expression(C,_i);
  3696. _r=X104isa_dca_inline_argument(_e);
  3697. {int z1=_r;
  3698.  
  3699. if((0==z1)){
  3700. R=0;
  3701. }
  3702.  else 
  3703. if((-1==z1)){
  3704. /*[IF*/
  3705. if(X52is_expanded(r178type(((T178*)_args),_i))){
  3706. R=X52is_expanded(X104result_type(_e));
  3707. }
  3708. else{
  3709. R=X52is_reference(X104result_type(_e));
  3710. }
  3711. /*FI]*/
  3712. }
  3713.  else{/*[IRF3.6put*/{T374* C1=(T374*)(oBC139isa_dca_inline_memory);
  3714. T6 b1=1;
  3715. T2 b2=_r;
  3716. ((/*RF2*/(C1)->_storage/*0*/))[(b2)-((/*RF2*/(C1)->_lower/*12*/))]=(b1);
  3717. }/*]*/
  3718. /*[IF*/
  3719. if(X52is_reference(r178type(((T178*)_relay_args),_r))){
  3720. /*[IF*/
  3721. if(X52is_reference(r178type(((T178*)_args),_i))){
  3722. R=X52is_reference(X104result_type(_e));
  3723. }
  3724. else{
  3725. R=0;
  3726. }
  3727. /*FI]*/
  3728. }
  3729.  else if(X52is_expanded(r178type(((T178*)_args),_i))){
  3730. R=X52is_expanded(X104result_type(_e));
  3731. }
  3732. else{
  3733. R=0;
  3734. }
  3735. /*FI]*/
  3736. }}
  3737. _i=(_i)-(1);
  3738. }
  3739. /*[IF*/
  3740. if(R){
  3741. /*[IF*/
  3742. if((X334arguments(a1))!=((void*)(NULL))){
  3743. _i=/*(IRF4.6count*/(/*RF2*/(((T182*)((/*RF2*/((T178*)(X334arguments(a1)))->_flat_list/*8*/))))->_upper/*12*/)/*)*/;
  3744. }
  3745. else{
  3746. _i=0;
  3747. }
  3748. /*FI]*/
  3749. while (!((!(R))||((_i)==(0))))
  3750. {
  3751. R=r374item((T374*)(oBC139isa_dca_inline_memory),_i);
  3752. _i=(_i)-(1);
  3753. }
  3754. }
  3755. /*FI]*/
  3756. return R;
  3757. }
  3758.  
  3759.  
  3760. void r381dca_inline(T381* C,T0* a1){
  3761. T2 _up=0;
  3762. T2 _i=0;
  3763. _up=r381count(C);
  3764. _i=1;
  3765. while (!((_i)>(_up)))
  3766. {
  3767. r381dca_inline_ith(C,a1,_i);
  3768. _i=(_i)+(1);
  3769. /*[IF*/
  3770. if((_i)<=(_up)){
  3771. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  3772. T3 b1=((T3)'\54');
  3773. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  3774. }/*]*/
  3775. /*]*/
  3776. }
  3777. /*FI]*/
  3778. }
  3779. }
  3780.  
  3781.  
  3782. T6 r381can_be_dropped(T381* C){
  3783. T6 R=0;
  3784. T2 _i=0;
  3785. R=1;
  3786. _i=r381count(C);
  3787. while (!((!(R))||((_i)==(0))))
  3788. {
  3789. R=X104can_be_dropped(r381expression(C,_i));
  3790. _i=(_i)-(1);
  3791. }
  3792. return R;
  3793. }
  3794.  
  3795.  
  3796. void r381run_feature(T381* C,T0* a1){
  3797. T0* _fal=NULL;
  3798. T2 _i=0;
  3799. _fal=X334arguments(a1);
  3800. _i=/*(IRF4.6count*/(/*RF2*/(((T182*)((/*RF2*/(((T178*)_fal))->_flat_list/*8*/))))->_upper/*12*/)/*)*/;
  3801. {T141*n=((T141*)malloc(sizeof(*n))/*16*/);
  3802. *n=M141;
  3803. r141make(n,(_i)-(1));
  3804. (/*SFN*/C->_remainder)=((T0*)n);
  3805. }
  3806. while (!((_i)==(0)))
  3807. {
  3808. r381put(C,/*(IRF4.6name*/r182item(((T182*)((/*RF2*/(((T178*)_fal))->_flat_list/*8*/))),_i)/*)*/,_i);
  3809. _i=(_i)-(1);
  3810. }
  3811. (/*SFN*/C->_current_type)=/*SSWARF2*//*X334current_type*/(/*RF2*/(((T368*)a1))->_current_type/*8*/);
  3812. }
  3813.  
  3814.  
  3815. void r381match_with(T381* C,T0* a1,T0* a2){
  3816. T0* _ft=NULL;
  3817. T0* _at=NULL;
  3818. T0* _e=NULL;
  3819. T2 _i=0;
  3820. T0* _fal=NULL;
  3821. _fal=X334arguments(a1);
  3822. /*[IF*/
  3823. if((_fal)==((void*)(NULL))){
  3824. {T68 se_tmp0;
  3825. r66add_position((*(se_tmp0=X334start_position(a1),&se_tmp0)));
  3826. }
  3827. {T68 se_tmp0;
  3828. r381error((*(se_tmp0=r381start_position(C),&se_tmp0)),((T0*)ms139_36216));
  3829. }
  3830. }
  3831. /*FI]*/
  3832. /*[IF*/
  3833. if(((/*(IRF4.9nb_errors*/(/*RF2*/((T66*)(oBC13eh))->_error_counter/*0*/)/*)*/)==(0))&&((/*(IRF4.6count*/(/*RF2*/(((T182*)((/*RF2*/(((T178*)_fal))->_flat_list/*8*/))))->_upper/*12*/)/*)*/)!=(r381count(C)))){
  3834. {T68 se_tmp0;
  3835. r66add_position((*(se_tmp0=r178start_position(((T178*)_fal)),&se_tmp0)));
  3836. }
  3837. {T68 se_tmp0;
  3838. r381error((*(se_tmp0=r381start_position(C),&se_tmp0)),((T0*)ms139_36216));
  3839. }
  3840. }
  3841. /*FI]*/
  3842. _i=r381count(C);
  3843. while (!(((_i)==(0))||((/*(IRF4.9nb_errors*/(/*RF2*/((T66*)(oBC13eh))->_error_counter/*0*/)/*)*/)>(0))))
  3844. {
  3845. _e=r381expression(C,_i);
  3846. _at=X104result_type(_e);
  3847. _ft=r178type(((T178*)_fal),_i);
  3848. /*[IF*/
  3849. if(X104is_void(_e)){
  3850. /*[IF*/
  3851. if(X52is_expanded(_ft)){
  3852. {T68 se_tmp0;
  3853. r66add_position((*(se_tmp0=X104start_position(_e),&se_tmp0)));
  3854. }
  3855. {T68 se_tmp0;
  3856. r381error((*(se_tmp0=X52start_position(_ft),&se_tmp0)),((T0*)ms139_89271));
  3857. }
  3858. }
  3859. /*FI]*/
  3860. }
  3861.  else if(X52is_like_current(_ft)){
  3862. /*[IF*/
  3863. if(X52is_a(X52run_type(_at),X52run_type(_ft))){
  3864. /*[IF*/
  3865. if(X52is_expanded(X52run_type(_at))){
  3866. }
  3867.  else if(X52is_a(X52run_type(_at),X52run_type(_ft))){
  3868. }
  3869. else{
  3870. {T68 se_tmp0;
  3871. r66add_position((*(se_tmp0=X104start_position(_e),&se_tmp0)));
  3872. }
  3873. {T68 se_tmp0;
  3874. r381error((*(se_tmp0=X52start_position(_ft),&se_tmp0)),((T0*)ms139_35088));
  3875. }
  3876. }
  3877. /*FI]*/
  3878. }
  3879. else{
  3880. {T68 se_tmp0;
  3881. r66add_position((*(se_tmp0=X104start_position(_e),&se_tmp0)));
  3882. }
  3883. {T68 se_tmp0;
  3884. r381error((*(se_tmp0=X52start_position(_ft),&se_tmp0)),((T0*)ms139_35088));
  3885. }
  3886. }
  3887. /*FI]*/
  3888. }
  3889.  else if(X52is_like_feature(_ft)){
  3890. /*[IF*/
  3891. if(X52is_a(X52run_type(_at),X52run_type(_ft))){
  3892. }
  3893. else{
  3894. {T68 se_tmp0;
  3895. r66add_position((*(se_tmp0=X104start_position(_e),&se_tmp0)));
  3896. }
  3897. {T68 se_tmp0;
  3898. r381error((*(se_tmp0=X52start_position(_ft),&se_tmp0)),((T0*)ms139_40404));
  3899. }
  3900. }
  3901. /*FI]*/
  3902. }
  3903.  else if(r381is_like_argument(C,_e,_at,_ft)){
  3904. }
  3905.  else if(X52is_a(_at,_ft)){
  3906. }
  3907. else{
  3908. {T68 se_tmp0;
  3909. r381error((*(se_tmp0=X104start_position(_e),&se_tmp0)),((T0*)ms139_99162));
  3910. }
  3911. }
  3912. /*FI]*/
  3913. _e=r341implicit_cast((T341*)(oBC13conversion_handler),_e,_ft);
  3914. r381put(C,_e,_i);
  3915. _i=(_i)-(1);
  3916. }
  3917. }
  3918.  
  3919.  
  3920. void r381make_n(T381* C,T0* a1,T0* a2){
  3921. (/*SFN*/C->_first_one)=a1;
  3922. (/*SFN*/C->_remainder)=a2;
  3923. }
  3924.  
  3925.  
  3926. T0* r381run_class(T381* C){
  3927. T0* R=NULL;
  3928. R=X52run_class((/*RF2*/(C)->_current_type/*12*/));
  3929. return R;
  3930. }
  3931.  
  3932.  
  3933. T6 r381is_like_argument(T381* C,T0* a1,T0* a2,T0* a3){
  3934. T6 R=0;
  3935. T0* _ot=NULL;
  3936. T0* _tla=NULL;
  3937. _tla=a3;
  3938. if(NULL!=(_tla)){
  3939. switch(((T0*)_tla)->id){
  3940. case 257:
  3941. break;
  3942. default:
  3943. _tla=NULL;
  3944. }
  3945. }/*[IF*/
  3946. if((_tla)!=((void*)(NULL))){
  3947. R=1;
  3948. _ot=X104result_type(r381expression(C,/*(IRF4.6rank*/(/*RF2*/(((T179*)((/*RF2*/(((T257*)_tla))->_like_what/*12*/))))->_rank/*12*/)/*)*/));
  3949. /*[IF*/
  3950. if(!(X52is_a(X52run_type(a2),X52run_type(_ot)))){
  3951. {T68 se_tmp0;
  3952. r66add_position((*(se_tmp0=X104start_position(a1),&se_tmp0)));
  3953. }
  3954. {T68 se_tmp0;
  3955. r381error((*(se_tmp0=X52start_position(a3),&se_tmp0)),((T0*)ms139_43200));
  3956. }
  3957. }
  3958. /*FI]*/
  3959. }
  3960. /*FI]*/
  3961. return R;
  3962. }
  3963.  
  3964.  
  3965. void r381assertion_check(T381* C,T3 a1){
  3966. T2 _i=0;
  3967. _i=r381count(C);
  3968. while (!((_i)==(0)))
  3969. {
  3970. X104assertion_check(r381expression(C,_i),a1);
  3971. _i=(_i)-(1);
  3972. }
  3973. }
  3974.  
  3975.  
  3976. void r381compile_to_c(T381* C,T0* a1){
  3977. T2 _up=0;
  3978. T2 _i=0;
  3979. _i=1;
  3980. _up=r381count(C);
  3981. while (!((_i)>(_up)))
  3982. {
  3983. r381compile_to_c_ith(C,a1,_i);
  3984. _i=(_i)+(1);
  3985. /*[IF*/
  3986. if((_i)<=(_up)){
  3987. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  3988. T3 b1=((T3)'\54');
  3989. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  3990. }/*]*/
  3991. /*]*/
  3992. }
  3993. /*FI]*/
  3994. }
  3995. }
  3996.  
  3997.  
  3998. T6 r381stupid_switch(T381* C,T0* a1){
  3999. T6 R=0;
  4000. T2 _i=0;
  4001. R=1;
  4002. _i=r381count(C);
  4003. while (!((!(R))||((_i)==(0))))
  4004. {
  4005. R=X104stupid_switch(r381expression(C,_i),a1);
  4006. _i=(_i)-(1);
  4007. }
  4008. return R;
  4009. }
  4010.  
  4011.  
  4012. T0* r381expression(T381* C,T2 a1){
  4013. T0* R=NULL;
  4014. /*[IF*/
  4015. if((a1)==(1)){
  4016. R=(/*RF2*/(C)->_first_one/*4*/);
  4017. }
  4018. else{
  4019. R=X141item((/*RF2*/(C)->_remainder/*8*/),(a1)-(2));
  4020. }
  4021. /*FI]*/
  4022. return R;
  4023. }
  4024.  
  4025.  
  4026. void r381from_model(T381* C,T0* a1){
  4027. (/*SFN*/C->_first_one)=(/*RF2*/(((T381*)a1))->_first_one/*4*/);
  4028. (/*SFN*/C->_remainder)=(/*RF2*/(((T381*)a1))->_remainder/*8*/);
  4029. /*[IF*/
  4030. if(((/*RF2*/(C)->_remainder/*8*/))!=((void*)(NULL))){
  4031. (/*SFN*/C->_remainder)=X141twin((/*RF2*/(C)->_remainder/*8*/));
  4032. }
  4033. /*FI]*/
  4034. }
  4035.  
  4036.  
  4037. T6 r381is_pre_computable(T381* C){
  4038. T6 R=0;
  4039. T2 _i=0;
  4040. _i=r381count(C);
  4041. R=1;
  4042. while (!((!(R))||((_i)==(0))))
  4043. {
  4044. R=X104is_pre_computable(r381expression(C,_i));
  4045. _i=(_i)-(1);
  4046. }
  4047. return R;
  4048. }
  4049.  
  4050.  
  4051. T68 r381start_position(T381* C){
  4052. T68 R={NULL,0};
  4053. {T68 se_tmp0;
  4054. R=(*(se_tmp0=X104start_position(/*(IRF4.3first*/(/*RF2*/(C)->_first_one/*4*/)/*)*/),&se_tmp0));
  4055. }
  4056. return R;
  4057. }
  4058.  
  4059.  
  4060. T0* r161type_string(void){
  4061. if(fBC13type_string==0){fBC13type_string=1;{
  4062. T68 _unknown_position={NULL,0};
  4063. {T271*n=((T271*)malloc(sizeof(*n))/*8*/);
  4064. *n=M271;
  4065. oBC13type_string=((T0*)n);
  4066. r271make(n,_unknown_position);
  4067. }
  4068. }}
  4069. return oBC13type_string;
  4070. }
  4071.  
  4072.  
  4073. void r161add_ascii(T161* C,T3 a1){
  4074. r7extend((T7*)((/*RF2*/(C)->_to_string/*12*/)),a1);
  4075. /*[IF*/
  4076. if(((/*RF2*/(C)->_ascii/*20*/))==((void*)(NULL))){
  4077. {T162*n=((T162*)malloc(sizeof(*n))/*16*/);
  4078. *n=M162;
  4079. r162with_capacity(n,4,1);
  4080. (/*SFN*/C->_ascii)=((T0*)n);
  4081. }
  4082. }
  4083. /*FI]*/
  4084. r162add_last((T162*)((/*RF2*/(C)->_ascii/*20*/)),(/*RF2*/((T7*)((/*RF2*/(C)->_to_string/*12*/)))->_count/*4*/));
  4085. }
  4086.  
  4087.  
  4088. T0* r161add_comment(T161* C,T0* a1){
  4089. T0* R=NULL;
  4090. /*[IF*/
  4091. if(((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r44count(((T44*)((/*RF2*/(((T81*)a1))->_list/*8*/))))/*)*/)==(0))){
  4092. R=((T0*)(C));
  4093. }
  4094. else{
  4095. {T229*n=((T229*)malloc(sizeof(*n))/*12*/);
  4096. *n=M229;
  4097. r229make(n,(T0*)C,a1);
  4098. R=((T0*)n);
  4099. }
  4100. }
  4101. /*FI]*/
  4102. return R;
  4103. }
  4104.  
  4105.  
  4106. T0* r161to_runnable(T161* C,T0* a1){
  4107. T0* R=NULL;
  4108. /*[IF*/
  4109. if(((/*RF2*/(C)->_mangling/*28*/))==((void*)(NULL))){
  4110. (/*SFN*/C->_mangling)=r366register((T0*)C);
  4111. }
  4112. /*FI]*/
  4113. R=((T0*)(C));
  4114. return R;
  4115. }
  4116.  
  4117.  
  4118. T2 r161to_integer(T161* C){
  4119. T2 R=0;
  4120. r161error((/*RF2*/(C)->_start_position/*4*/),((T0*)ms14_45441));
  4121. return R;
  4122. }
  4123.  
  4124.  
  4125. T0* r161twin(T161* C){
  4126. T0* R=NULL;
  4127. R=malloc(sizeof(*C));
  4128. *((T161*)R)=*C;
  4129. return R;
  4130. }
  4131.  
  4132.  
  4133. void r161error(T68 a1,T0* a2){
  4134. r66add_position(a1);
  4135. /*[IRF3.6append*/{T0* b1=a2;
  4136. r7append((T7*)(oBC66explanation),b1);
  4137. }/*]*/
  4138. r66print_as_error((T66*)(oBC13eh));
  4139. }
  4140.  
  4141.  
  4142. void r161break_line(T161* C){
  4143. /*[IF*/
  4144. if(((/*RF2*/(C)->_break/*16*/))==((void*)(NULL))){
  4145. {T162*n=((T162*)malloc(sizeof(*n))/*16*/);
  4146. *n=M162;
  4147. r162with_capacity(n,4,1);
  4148. (/*SFN*/C->_break)=((T0*)n);
  4149. }
  4150. }
  4151. /*FI]*/
  4152. r162add_last((T162*)((/*RF2*/(C)->_break/*16*/)),((/*RF2*/((T7*)((/*RF2*/(C)->_to_string/*12*/)))->_count/*4*/))+(1));
  4153. }
  4154.  
  4155.  
  4156. T0* r161static_result_base_class(void){
  4157. T0* R=NULL;
  4158. R=r49get_class(((T0*)ms15_4956));
  4159. return R;
  4160. }
  4161.  
  4162.  
  4163. void r161make(T161* C,T68 a1){
  4164. (/*SFN*/C->_start_position)=a1;
  4165. {T7*n=((T7*)malloc(sizeof(*n))/*12*/);
  4166. *n=M7;
  4167. r7make(n,0);
  4168. (/*SFN*/C->_to_string)=((T0*)n);
  4169. }
  4170. }
  4171.  
  4172.  
  4173. void r161compile_to_c(T161* C){
  4174. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  4175. T3 b1=((T3)'\50');
  4176. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  4177. }/*]*/
  4178. /*]*/
  4179. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_1275));
  4180. /*]*/
  4181. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),(/*RF2*/(C)->_mangling/*28*/));
  4182. /*]*/
  4183. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  4184. T3 b1=((T3)'\51');
  4185. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  4186. }/*]*/
  4187. /*]*/
  4188. }
  4189.  
  4190.  
  4191. void r161add_percent(T161* C,T3 a1){
  4192. r7extend((T7*)((/*RF2*/(C)->_to_string/*12*/)),a1);
  4193. /*[IF*/
  4194. if(((/*RF2*/(C)->_percent/*24*/))==((void*)(NULL))){
  4195. {T162*n=((T162*)malloc(sizeof(*n))/*16*/);
  4196. *n=M162;
  4197. r162with_capacity(n,4,1);
  4198. (/*SFN*/C->_percent)=((T0*)n);
  4199. }
  4200. }
  4201. /*FI]*/
  4202. r162add_last((T162*)((/*RF2*/(C)->_percent/*24*/)),(/*RF2*/((T7*)((/*RF2*/(C)->_to_string/*12*/)))->_count/*4*/));
  4203. }
  4204.  
  4205.  
  4206. T0* r184add_comment(T184* C,T0* a1){
  4207. T0* R=NULL;
  4208. /*[IF*/
  4209. if(((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r44count(((T44*)((/*RF2*/(((T81*)a1))->_list/*8*/))))/*)*/)==(0))){
  4210. R=((T0*)(C));
  4211. }
  4212. else{
  4213. {T229*n=((T229*)malloc(sizeof(*n))/*12*/);
  4214. *n=M229;
  4215. r229make(n,(T0*)C,a1);
  4216. R=((T0*)n);
  4217. }
  4218. }
  4219. /*FI]*/
  4220. return R;
  4221. }
  4222.  
  4223.  
  4224. void r184mapping_c_target(T0* a1){
  4225. T6 _flag=0;
  4226. /*[IF*/
  4227. /*AF*//*AE*/
  4228. /*FI]*/
  4229. r325print_current((T325*)(oBC13cpp));
  4230. /*[IF*/
  4231. if(_flag){
  4232. /*[IRF3.2call_invariant_end*//*[IRF3.6put_character*/{T48* C1=(T48*)(oBC325out_c);
  4233. T3 b1=((T3)'\51');
  4234. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  4235. }/*]*/
  4236. /*]*/
  4237. }
  4238. /*FI]*/
  4239. }
  4240.  
  4241.